Ecs::Entity createPlayer( Threading::ConcurrentWriter<Ecs::World>& world, const Vec3Df& position, const Vec3Df& rotation, const Statistics& statistics, const Ecs::Entity& group, Event::EventQueue& queue ) { Ecs::Entity entity = createCharacter( world, position, rotation, statistics, group, queue ); world->addComponent( entity, new Input::PlayerComponent() ); return entity; }
MWState::Character *MWState::CharacterManager::getCurrentCharacter (bool create, const std::string& name) { if (!mCurrent && create) createCharacter(name); return mCurrent; }
void LoggedInState::runCommand(const std::string &command, const std::string &args) { if (Logout == command) { ConsoleBackend::getSingleton().pushMessage("Logging out...", "important"); mAccount.logout(); // Create Character command } else if (CreateChar == command) { // Split string into name/type/sex/description Tokeniser tokeniser = Tokeniser(); tokeniser.initTokens(args); std::string name = tokeniser.nextToken(); std::string sex = tokeniser.nextToken(); std::string type = tokeniser.nextToken(); std::string spawnPoint = tokeniser.nextToken(); std::string description = tokeniser.remainingTokens(); createCharacter(name, sex, type, description, spawnPoint, Atlas::Message::MapType()); // Take Character Command } else if (TakeChar == command) { takeCharacter(args); // List Characters Command } else if (ListChars == command) { mAccount.refreshCharacterInfo(); // Say (In-Game chat) Command } }
bool VenusScene::init() { ////////////////////////////// // 1. super init first if (!Layer::init()) { return false; } Size visibleSize = Director::getInstance()->getVisibleSize(); Point origin = Director::getInstance()->getVisibleOrigin(); loadMap("maps/PantallaMercurio/Venus.tmx", "Objetos", "Rocas2", "Rocas1", "bg1", "bg2", "FondoPrincipal", "Meta"); setEventHandlers(); createCharacter("maps/personajepequeno.png"); //createCharacterAnimation(); tileMap->addChild(playerOne->PlayerSprite, 2); crearParticulaFuego(Point(2200,120)); this->addChild(tileMap, -1, 1); setPointOfView(Point(playerOne->PlayerSprite->getPosition())); printf("x mapPosition %f", tileMap->getPosition().x); printf("x mapPosition %f", tileMap->getPosition().y); auto listener = EventListenerKeyboard::create(); cocos2d::Sprite* ptr = playerOne->PlayerSprite; while (metaCheck(Point(ptr->getPositionX(), ptr->getPositionY()-3)) == "Normal") { ptr->setPosition(Point(ptr->getPositionX() + 0.5, ptr->getPositionY() - 0.5)); ptr->setPosition(Point(ptr->getPositionX(), playerOne->PlayerSprite->getPositionY() - 1.5)); setPointOfView(Point(ptr->getPosition())); } listener->onKeyPressed = CC_CALLBACK_2(VenusScene::keyPressed, this); listener->onKeyReleased = CC_CALLBACK_2(VenusScene::keyReleased, this); this->schedule(schedule_selector(VenusScene::onKeyHold)); _eventDispatcher->addEventListenerWithSceneGraphPriority(listener, this); //Carga de las estrellas de puntaje loadStars(); //Etiqueta en pantalla del marcador marcadores(); cargarPropulsores(); cargarNave(); //Método para verificar las distintas colisiones, en este caso, de estrellas para actualizar el puntaje schedule(schedule_selector(VenusScene::updateColision)); return true; }
int NewGameMenuController::launch(std::string &name) { newGameMenuScreen.display(true); bool correct = false; bool stop = false; do { sf::Event event = newGameMenuScreen.recupInput(); if (event.type == sf::Event::Closed) return CLOSE_INPUT; //If a text is entered: if (event.type == sf::Event::TextEntered) { sf::String s = newGameMenuScreen.characterName.getString(); //If it's a backspace we erase the last caracter if (event.text.unicode == 8) { if (s.getSize() > 0) s.erase(s.getSize() - 1); } //We accept letters else if ((event.text.unicode > 96) && (event.text.unicode < 123)) { if (s.getSize() < 17) s.insert(s.getSize(), event.text.unicode); } //And capitals else if ((event.text.unicode > 64) && (event.text.unicode < 91)) { if (s.getSize() < 17) s.insert(s.getSize(), event.text.unicode); } //We accpet "-" else if (event.text.unicode == 45) { if (s.getSize() < 17) s.insert(s.getSize(), event.text.unicode); } //We accpet space else if (event.text.unicode == 32) { if ((s.getSize() < 17) && ((s.getSize() > 0))) s.insert(s.getSize(), event.text.unicode); } //And finally we check if the name is valid correct = true; //For the size if (s.getSize() <= 0) correct = false; //And if the name doesn't exist yet for (std::list<std::string>::iterator it=characters.begin();it!=characters.end(); ++it) if ((*it).compare(StringUtils::saveStem(s)) == 0) correct = false; newGameMenuScreen.characterName.setString(s); newGameMenuScreen.display(correct); } else if (event.type == sf::Event::KeyPressed) { if (event.key.code == sf::Keyboard::Escape) return TO_MAIN_MENU; if (event.key.code == sf::Keyboard::Return) stop = correct; } } while (!stop); name = newGameMenuScreen.characterName.getString(); createCharacter(name); return TO_CONTINUE; }
void GameLogic::createPlayerCharacter() { if (!playerCharacter_&& !startPositions_.empty()) { Vector2 position = startPositions_.front(); playerCharacter_ = createCharacter(playerCharacterName_, position, FRIEND_CATEGORY); std::cerr << "DEBUG: Created player character." << std::endl; } }
int main() { FSM* fsm = concat(closure(alternative(createCharacter('a'), createCharacter('b'))), concat(createCharacter('a'), concat(createCharacter('b'), createCharacter('b')))); printFsm(fsm); char buffer[100]; do { printf("String: "); scanf("%s", buffer); if (simulate(fsm, buffer)) { printf("%s wurde akzeptiert.\n", buffer); } else { printf("%s wurde nicht akzeptiert.\n", buffer); } } while (buffer[1]); freeFsm(fsm); }
bool BattleLayer::addCharacterToBattleMap(const cocos2d::Vec2 &position){ int tileCoordX = static_cast<int>(position.x) / static_cast<int>(_battleTileSize.width); int tileCoordY = static_cast<int>(position.y) / static_cast<int>(_battleTileSize.height); Vec2 characterPosition = Vec2(tileCoordX * _battleTileSize.width + _battleTileSize.width / 2, tileCoordY * _battleTileSize.height + _battleTileSize.height / 2); Character *testFatty = createCharacter(CharacterName::Fatty, Side::Player, this); testFatty->setPosition(characterPosition); _battleMap->addChild(testFatty, getBattleElementZOrderOnBattleMap(testFatty)); playerCharacters.push_back(testFatty); return true; }
bool BattleLayer::addCharacterToBattleMap(const CharacterName &name, const cocos2d::Vec2 &worldPosition){ Vec2 positionInBattleMap = _battleMap->convertToNodeSpace(worldPosition); Rect battleRect = Rect(0, 0, _battleMapSize.width, _battleMapSize.height); if (battleRect.containsPoint(positionInBattleMap)){ CCLOG("%s, %s, (%.2f, %.2f)", __func__, getCharacterNameString(name).c_str(), worldPosition.x, worldPosition.y); Character *newCharacter = createCharacter(name, Side::Player, this); newCharacter->setPosition(positionInBattleMap); _battleMap->addChild(newCharacter, getBattleElementZOrderOnBattleMap(newCharacter)); playerCharacters.push_back(newCharacter); newCharacter->setID(_characterID++); _playerWater -= GameData::getInstance()->getCharacterWaterCost(name); return true; } return false; }
bool GuanacasteScene::init() { ////////////////////////////// // 1. super init first if ( !Layer::init() ) { return false; } loadMap("Maps/guanacasteMap.tmx","bg","foreground1","foreground2","meta","extra","objetos"); campFire(); tileMap->addChild(SFogata,1); createCharacter("Personaje.png"); tileMap->addChild(Player1->PlayerSprite,5); setTouchEnabled(true); setEvents(); this->addChild(tileMap,-1,1); schedule(schedule_selector(GuanacasteScene::update)); return true; }
bool Application::setup() { Ogre::OverlayManager::getSingleton().getByName("InfoPanel")->show(); m_NXOgreScene->getMaterial(0)->setStaticFriction(0.5); m_NXOgreScene->getMaterial(0)->setDynamicFriction(0.5); m_NXOgreScene->getMaterial(0)->setRestitution(0.1); createCharacter(); createVolume(); createBasicScenary(); createTriangleMeshes(); createConvexes(); return true; }
Player::Player(Map* Board, int isInPlay[]) { // Roll for a random character int characterRoll; while(true) { srand((unsigned int)time(0)); characterRoll = rand() % NUMBEROFCHARACTERS; if(isInPlay[characterRoll] == 0) { isInPlay[characterRoll] = 1; break; } } character = createCharacter(characterRoll); isPermaDead = false; currentRegion = "outter"; Player::setCurrentArea(Board,"outter",character.getSpawnPoint()); }
bool Character::processMessage(const std::string &str, Player *pPlayer, std::string &data){ Characters message; message.ParseFromString(str); Characters msg; switch(message.type()){ case Characters::LIST: msg.set_type(Characters::LIST_CB); getCharacterList(pPlayer, msg); data = msg.SerializeAsString(); break; case Characters::CREATE: msg.set_type(Characters::CREATE_CB); createCharacter(pPlayer, message, msg); data = msg.SerializeAsString(); break; default: break; } return true; }