не удается изменить сцены в Cocos2d

#cocos2d-iphone #scene

#cocos2d-iphone #сцена

Вопрос:

Я работаю над учебным проектом cocos2d. Когда я хочу изменить сцены, я получаю только первую сцену, вторая сцена никогда не появляется. Кто-нибудь может рассказать мне о том, что было не так в моем коде?

 import cocos
import time
from cocos.scene import *
from cocos.director import director


class HelloCocos(cocos.layer.Layer):
    def __init__(self, text):
        super().__init__()
        self.text = text
        size = director.get_window_size()
        label = cocos.text.Label(self.text, font_name="Times New Roman", font_size=32)
        label.position = size[0] / 2, size[1] / 2
        self.add(label)


class HelloCocos2(cocos.layer.Layer):
    def __init__(self, text):
        super().__init__()
        self.text = text
        size = director.get_window_size()
        label = cocos.text.Label(self.text, font_name="Times New Roman", font_size=32)
        label.position = size[0] / 3, size[1] / 3
        self.add(label)


director.init(width=1280, height=800, caption="my cocos window")

first_scene = Scene(HelloCocos("hello cocos"))

second_scene = Scene(HelloCocos2("end cocos"))

director.run(first_scene)

director.replace(second_scene)

  

Ответ №1:

В cocos2d, чтобы заменить сцены, вы помещаете первую сцену в стек и открываете вторую сцену вот так.

 Director::getInstance()->replaceScene(second_scene);