#include "demoJet.h" #include "inGameAppState.h" #include "stateManager.h" #include "util.h" using namespace game::core; using namespace game::util; namespace game{ namespace content{ DemoJet::DemoJet(Player *player,vector3df pos, int id, bool onBoard) : Jet(player,pos, id,onBoard) {} void DemoJet::attack(Order order){ if(!onBoard){ Unit::attack(order); vector3df target=*order.targetPos[0]; float angle=getAngleBetween(dirVec,target-pos); vector3df axis=dirVec.crossProduct(target-pos); if(maxTurnAnglegetDevice()->getSceneManager(); ISceneNode *collNode = castRay(smgr,pos,pos+dirVec*length); if(collNode&&collNode!=node){ InGameAppState *inGameState=((InGameAppState*)gm->getStateManager()->getAppState(AppStateTypes::IN_GAME_STATE)); for(Player *p : inGameState->getPlayers()) for(Unit *u : p->getUnits()) if(u->getNode()==collNode) u->takeDamage(damage); blowUp(); } else if(pos.Y<0) blowUp(); } } } }