/*---------------------------------------------------------------------*//** アイテムをユニット化 ※ ソウマから装備アイテムをフォーカスできるようにユニット化する **//*---------------------------------------------------------------------*/ void ItemEquip::unitization(s32 ieqp, Item* item, u16 spid) { UnitManager* unitmng = Game::getGame()->getUnitManager(); ASSERT(unitmng != 0L); // 既にあるユニットを一度削除 if(_uidarrEq[ieqp] != 0) { Unit* unit = unitmng->getUnitFromId(_uidarrEq[ieqp]); if(unit != 0) { ASSERT(unit->getUnitType() == UNITTYPE_EQUIPMENT_ITEM); // 一度削除する unitmng->removeUnit(unit); } _uidarrEq[ieqp] = 0; } // アイテムを外した場合はここで抜ける if(item == 0L) { return; } // アイテムユニットを作成 EquipmentItemUnit* itmu = new EquipmentItemUnit(); ASSERT(itmu != 0L); itmu->create(item, _unitOwner, spid); // ユニットマネージャに追加 if(unitmng->addUnit(itmu)) { _uidarrEq[ieqp] = itmu->getUnitId(); } }
void WaveManager::update(float dt) { if (curWave < (int)waveList.size()) { //Wave if (waveTime <= dt) { curWave++; if (curWave < (int)waveList.size()) { //log("Wave---%d", curWave); monsterTime = 0; curMonster = 0; waveTime += waveList[curWave].WaveTime; } else{ log("Wave End"); } } waveTime -= dt; //Monster if (monsterTime <= dt) { if (curMonster < (int)waveList[curWave].wavedata.size()){ //log("Monster---%d", curMonster); UnitManager* objMgr = UnitManager::getInstance(); Monster* monster = new Monster( waveList[curWave].wavedata[curMonster].MonsterID, monsterPath[waveList[curWave].wavedata[curMonster].PathID]); //monster->setParent(objMgr->getLayer()); //auto sprite = Sprite::createWithSpriteFrameName("blank.png"); //sprite->setAnchorPoint(Vec2(0, 1)); //Size sizes(32, 32); //sprite->setContentSize(sizes); //monster->bindSprite(sprite); monster->setActorName("m001"); objMgr->addUnit(monster); monsterTime += waveList[curWave].wavedata[curMonster].NextDalay; curMonster++; } else{ //log("Monster End"); monsterTime += 999999; } } monsterTime -= dt; } }