void BeginTurnEffectLabelScript::vPostInit()
{
	pimpl->m_RenderComponent = getRenderComponent();

	auto eventDispatcher = SingletonContainer::getInstance()->get<IEventDispatcher>();
	eventDispatcher->vAddListener(EvtDataTurnPhaseChanged::s_EventType, pimpl, [this](const auto & e) {
		pimpl->onTurnPhaseChanged(static_cast<const EvtDataTurnPhaseChanged &>(e));
	});
}
void TerrainInfoPanelScript::vPostInit()
{
	auto ownerActor = m_OwnerActor.lock();
	auto gameLogic = SingletonContainer::getInstance()->get<BaseGameLogic>();
	auto sceneNode = ownerActor->getRenderComponent()->getSceneNode();

	auto backgroundActor = gameLogic->createActorAndChildren(TerrainInfoPanelScriptImpl::s_BackgroundActorPath.c_str());
	ownerActor->addChild(*backgroundActor);
	//sceneNode->addChild(backgroundActor->getRenderComponent()->getSceneNode());
}
void TurnAndPlayerLabelScript::vPostInit()
{
	pimpl->m_RenderComponent = getRenderComponent();
	assert(pimpl->m_RenderComponent && "TurnAndPlayerLabelScript::vPostInit() the actor has no render component.");
	assert(dynamic_cast<cocos2d::Label*>(pimpl->m_RenderComponent->getSceneNode()) && "TurnAndPlayerLabelScript::vPostInit() the scene node inside the render component is not cocos2d::Label");

	auto eventDispatcher = SingletonContainer::getInstance()->get<IEventDispatcher>();
	eventDispatcher->vAddListener(EvtDataTurnPhaseChanged::s_EventType, pimpl, [this](const auto & e) {
		pimpl->onTurnPhaseChanged(static_cast<const EvtDataTurnPhaseChanged &>(e));
	});
}
Example #4
0
void TileScript::vPostInit()
{
	auto ownerActor = m_OwnerActor.lock();

	auto renderComponent = ownerActor->getRenderComponent();
	assert(renderComponent && "TileScript::vPostInit() the actor has no sprite render component.");
	pimpl->m_RenderComponent = std::move(renderComponent);

	auto transformComponent = ownerActor->getComponent<TransformComponent>();
	assert(transformComponent && "TileScript::vPostInit() the actor has no transform component.");
	pimpl->m_TransformComponent = std::move(transformComponent);
}
 void FastRenderComponentManager::drawGuiComponents() {
     View view = window.getView();
     View defaultView = window.getDefaultView();
     defaultView.setCenter(math::Vec3f(window.getSize().x * 0.5f, window.getSize().y * 0.5f, 0));
     window.setView(defaultView);
     for (unsigned int i = 0; i < components.size(); i++) {
         if (getRenderComponent(i) == nullptr) {
             static_cast<LightComponent*>(components[i])->checkSubWindowEvents();
             if (getGuiComponent(i)->isVisible())
                 window.draw(*components[i]);
         }
     }
     window.setView(view);
 }
Example #6
0
void CommandPanelScript::vPostInit()
{
	auto ownerActor = m_OwnerActor.lock();
	auto gameLogic = SingletonContainer::getInstance()->get<BaseGameLogic>();
	auto sceneNode = ownerActor->getRenderComponent()->getSceneNode();

	auto backgroundActor = gameLogic->createActor(CommandPanelScriptImpl::s_BackgroundActorPath.c_str());
	ownerActor->addChild(*backgroundActor);
	//sceneNode->addChild(backgroundActor->getRenderComponent()->getSceneNode());

	auto listActor = gameLogic->createActor(CommandPanelScriptImpl::s_ListActorPath.c_str());
	ownerActor->addChild(*listActor);
	//sceneNode->addChild(listActor->getRenderComponent()->getSceneNode());
	pimpl->m_ListScript = listActor->getComponent<CommandListScript>();
}
Example #7
0
void MovingPathScript::MovingPathScriptImpl::clearPath()
{
	auto eventDispatcher = SingletonContainer::getInstance()->get<IEventDispatcher>();
	for (const auto & weakChild : m_ChildrenGridActorIDs) {
		if (weakChild.expired()) {
			continue;
		}

		auto strongChild = weakChild.lock();
		eventDispatcher->vQueueEvent(std::make_unique<EvtDataRequestDestroyActor>(strongChild->getID()));
		strongChild->getRenderComponent()->getSceneNode()->removeFromParent();
	}

	m_MovingPath.clear();
	m_ChildrenGridActorIDs.clear();
}
Example #8
0
void UnitScript::vPostInit()
{
	pimpl->m_Script = getComponent<UnitScript>();

	pimpl->m_RenderComponent = getRenderComponent();
	assert(pimpl->m_RenderComponent && "UnitScript::vPostInit() the actor has no render component.");

	pimpl->m_TransformComponent = getComponent<TransformComponent>();
	assert(pimpl->m_TransformComponent && "UnitScript::vPostInit() the actor has no transform component.");

	pimpl->m_ActionComponent = getComponent<ActionComponent>();
	assert(pimpl->m_ActionComponent && "UnitScript::vPostInit() the actor has no action component.");

	//auto eventDispatcher = SingletonContainer::getInstance()->get<IEventDispatcher>();
	//eventDispatcher->vAddListener(EvtDataRequestChangeUnitState::s_EventType, pimpl, [this](const auto & e) {
	//	pimpl->onRequestChangeUnitState(static_cast<const EvtDataRequestChangeUnitState &>(e));
	//});
}
 void FastRenderComponentManager::drawRenderComponents() {
     for (unsigned int i = 0; i < components.size(); i++) {
         if (getRenderComponent(i) != nullptr && getRenderComponent(i)->isVisible())
             window.draw(*components[i]);
     }
 }