public bool Deserialize(ref MonsterSpawnList element) { if (GetDataSize() == 0) { // 데이터가 설정되지 않았다. return(false); } bool ret = true; byte monsterKind = 0; byte monsterNum = 0; byte monsterId = 0; ret &= Deserialize(ref monsterKind); element = new MonsterSpawnList(monsterKind); for (int i = 0; i < monsterKind; i++) { ret &= Deserialize(ref monsterId); ret &= Deserialize(ref monsterNum); element.MonsterSpawnData[i] = new MonsterSpawnData(monsterId, monsterNum); } return(ret); }
//Server - 던전 몬스터 소환 데이터 수신 public void MonsterSpawnList(DataPacket packet) { Debug.Log("던전 몬스터 소환 데이터 수신"); MonsterSpawnListPacket monsterSpawnListPacket = new MonsterSpawnListPacket(packet.msg); MonsterSpawnList monsterSpawnList = monsterSpawnListPacket.GetData(); dungeonManager.SetMonsterSpawnList(monsterSpawnList); }
public void SetMonsterSpawnList(MonsterSpawnList newMonsterSpawnList) { monsterSpawnList = newMonsterSpawnList; monsters = new GameObject[monsterSpawnList.MonsterNum]; monsterData = new Monster[monsterSpawnList.MonsterNum]; for (int monsterIndex = 0; monsterIndex < monsterSpawnList.MonsterNum; monsterIndex++) { monsterData[monsterIndex] = new Monster(); } }
public bool Serialize(MonsterSpawnList data) { bool ret = true; ret &= Serialize(data.MonsterKind); for (int i = 0; i < data.MonsterKind; i++) { ret &= Serialize(data.MonsterSpawnData[i].MonsterId); ret &= Serialize(data.MonsterSpawnData[i].MonsterNum); } return(ret); }
void Start() { //SceneManager = this.scene; //test if (GameObject.FindGameObjectWithTag("GameManager") == null) { players = GameObject.FindGameObjectsWithTag("Player"); } //Instantiate 스폰포인트 생성조건 - > mapNumber != 2; // if (scenmanager.name == ("ProtoTypeCoPy3")) { mapNumber = 3; // } if (mapNumber == 2) { normalMode = false; } if (mapNumber != 2) { normalMode = true; } DungeonConstruct(); if (GameObject.FindGameObjectWithTag("GameManager") == null) { InitializeMonsterSpawnPoint(); // if(mapNumber==3){ MonsterSpawnData[] monsterSpawnData = new MonsterSpawnData[4]; monsterSpawnData[0] = new MonsterSpawnData((int)MonsterId.Frog, 3); monsterSpawnData[1] = new MonsterSpawnData((int)MonsterId.Duck, 4); monsterSpawnData[2] = new MonsterSpawnData((int)MonsterId.Rabbit, 1); monsterSpawnData[3] = new MonsterSpawnData((int)MonsterId.BlackBear, 1); monsterSpawnList = new MonsterSpawnList(4, monsterSpawnData); MonsterBaseData[] monsterBaseData = new MonsterBaseData[4]; monsterBaseData[0] = new MonsterBaseData((int)MonsterId.Frog, "Frog"); monsterBaseData[0].AddLevelData(new MonsterLevelData(1, 2, 0, 30, 5)); monsterBaseData[1] = new MonsterBaseData((int)MonsterId.Duck, "Duck"); monsterBaseData[1].AddLevelData(new MonsterLevelData(1, 3, 0, 35, 4)); monsterBaseData[2] = new MonsterBaseData((int)MonsterId.Rabbit, "Rabbit"); monsterBaseData[2].AddLevelData(new MonsterLevelData(1, 5, 0, 1000, 4)); monsterBaseData[3] = new MonsterBaseData((int)MonsterId.BlackBear, "BlackBear"); monsterBaseData[3].AddLevelData(new MonsterLevelData(1, 5, 0, 1000, 1)); dungeonData = new MonsterStatusData(4, monsterBaseData); // } // if (mapNumber == 1) { // MonsterSpawnData[] monsterSpawnData = new MonsterSpawnData[3]; // monsterSpawnData[0] = new MonsterSpawnData((int)MonsterId.Frog, 3); // monsterSpawnData[1] = new MonsterSpawnData((int)MonsterId.Duck, 3); // monsterSpawnData[2] = new MonsterSpawnData((int)MonsterId.Rabbit, 2); // monsterSpawnList = new MonsterSpawnList(3, monsterSpawnData); // // MonsterBaseData[] monsterBaseData = new MonsterBaseData[3]; // monsterBaseData[0] = new MonsterBaseData((int)MonsterId.Frog, "Frog"); // monsterBaseData[0].AddLevelData(new MonsterLevelData(1, 2, 0, 30, 5)); // monsterBaseData[1] = new MonsterBaseData((int)MonsterId.Duck, "Duck"); // monsterBaseData[1].AddLevelData(new MonsterLevelData(1, 3, 0, 35, 4)); // monsterBaseData[2] = new MonsterBaseData((int)MonsterId.Rabbit, "Rabbit"); // monsterBaseData[2].AddLevelData(new MonsterLevelData(1, 5, 0, 100, 4)); // // dungeonData = new MonsterStatusData(3, monsterBaseData); // } // MonsterSpawnData[] monsterSpawnData = new MonsterSpawnData[4]; // monsterSpawnData[0] = new MonsterSpawnData((int)MonsterId.Frog, 3); // monsterSpawnData[1] = new MonsterSpawnData((int)MonsterId.Duck, 4); // monsterSpawnData[2] = new MonsterSpawnData((int)MonsterId.Rabbit, 1); // monsterSpawnData[3] = new MonsterSpawnData((int)MonsterId.BlackBear, 1); // monsterSpawnList = new MonsterSpawnList(4, monsterSpawnData); // // MonsterBaseData[] monsterBaseData = new MonsterBaseData[4]; // monsterBaseData[0] = new MonsterBaseData((int)MonsterId.Frog, "Frog"); // monsterBaseData[0].AddLevelData(new MonsterLevelData(1, 2, 0, 30, 5)); // monsterBaseData[1] = new MonsterBaseData((int)MonsterId.Duck, "Duck"); // monsterBaseData[1].AddLevelData(new MonsterLevelData(1, 3, 0, 35, 4)); // monsterBaseData[2] = new MonsterBaseData((int)MonsterId.Rabbit, "Rabbit"); // monsterBaseData[2].AddLevelData(new MonsterLevelData(1, 5, 0, 100, 4)); // monsterBaseData[3] = new MonsterBaseData((int)MonsterId.BlackBear, "BlackBear"); // monsterBaseData[3].AddLevelData(new MonsterLevelData(1, 5, 0, 1000, 4)); // dungeonData = new MonsterStatusData(4, monsterBaseData); SetMonsterSpawnList(monsterSpawnList); SpawnMonster(); SetMonsterStatus(); } // if (GameObject.FindGameObjectWithTag("GameManager") == null) // { // //스폰 포인트 찾기 // InitializeMonsterSpawnPoint(); // // //서버에서 온 데이터 : monsterSpawnData // //여기서는 직접 데이터를 설정 // MonsterSpawnData[] monsterSpawnData = new MonsterSpawnData[1]; // monsterSpawnData[0] = new MonsterSpawnData((int)MonsterId.Bear, 1); // //monsterSpawnData[1] = new MonsterSpawnData((int)MonsterId.BlackBear, 1); // // //던전 데이터에서 몬스터 스폰 리스트를 monsterSpawnData로 설정 // //그러면 몬스터 생성 숫자가 설정됨(종류, 개수) // monsterSpawnList = new MonsterSpawnList(1, monsterSpawnData); // // //서버에서 온 데이터 : monsterBaseData // MonsterBaseData[] monsterBaseData = new MonsterBaseData[1]; // monsterBaseData[0] = new MonsterBaseData((int)MonsterId.Bear, "Bear"); // monsterBaseData[0].AddLevelData(new MonsterLevelData(1, 2, 0, 30,1)); // // //던전 데이터에서 몬스터 스탯테이블을 monsterBaseData로 설정 // //그러면 위의 몬스터 생성할때 스탯이 이렇게 설정됨 // dungeonData = new MonsterStatusData(1, monsterBaseData); // // SpawnMonster(); // SetMonsterStatus(); // } }
void Start() { //test if (GameObject.FindGameObjectWithTag("GameManager") == null) { players = GameObject.FindGameObjectsWithTag("Player"); } //Instantiate 스폰포인트 생성조건 - > mapNumber != 2; mapNumber = 2; normalMode = false; DungeonConstruct(); if (GameObject.FindGameObjectWithTag("GameManager") == null) { InitializeMonsterSpawnPoint(); MonsterSpawnData[] monsterSpawnData = new MonsterSpawnData[3]; monsterSpawnData[0] = new MonsterSpawnData((int)MonsterId.Frog, 9); monsterSpawnData[1] = new MonsterSpawnData((int)MonsterId.Duck, 12); monsterSpawnData[2] = new MonsterSpawnData((int)MonsterId.Rabbit, 6); monsterSpawnList = new MonsterSpawnList(3, monsterSpawnData); MonsterBaseData[] monsterBaseData = new MonsterBaseData[3]; monsterBaseData[0] = new MonsterBaseData((int)MonsterId.Frog, "Frog"); monsterBaseData[0].AddLevelData(new MonsterLevelData(1, 2, 0, 30, 5)); monsterBaseData[1] = new MonsterBaseData((int)MonsterId.Duck, "Duck"); monsterBaseData[1].AddLevelData(new MonsterLevelData(1, 3, 0, 35, 4)); monsterBaseData[2] = new MonsterBaseData((int)MonsterId.Rabbit, "Rabbit"); monsterBaseData[2].AddLevelData(new MonsterLevelData(1, 5, 0, 75, 4)); dungeonData = new MonsterStatusData(3, monsterBaseData); SetMonsterSpawnList(monsterSpawnList); SpawnMonster(); SetMonsterStatus(); } // if (GameObject.FindGameObjectWithTag("GameManager") == null) // { // //스폰 포인트 찾기 // InitializeMonsterSpawnPoint(); // // //서버에서 온 데이터 : monsterSpawnData // //여기서는 직접 데이터를 설정 // MonsterSpawnData[] monsterSpawnData = new MonsterSpawnData[1]; // monsterSpawnData[0] = new MonsterSpawnData((int)MonsterId.Bear, 1); // //monsterSpawnData[1] = new MonsterSpawnData((int)MonsterId.BlackBear, 1); // // //던전 데이터에서 몬스터 스폰 리스트를 monsterSpawnData로 설정 // //그러면 몬스터 생성 숫자가 설정됨(종류, 개수) // monsterSpawnList = new MonsterSpawnList(1, monsterSpawnData); // // //서버에서 온 데이터 : monsterBaseData // MonsterBaseData[] monsterBaseData = new MonsterBaseData[1]; // monsterBaseData[0] = new MonsterBaseData((int)MonsterId.Bear, "Bear"); // monsterBaseData[0].AddLevelData(new MonsterLevelData(1, 2, 0, 30,1)); // // //던전 데이터에서 몬스터 스탯테이블을 monsterBaseData로 설정 // //그러면 위의 몬스터 생성할때 스탯이 이렇게 설정됨 // dungeonData = new MonsterStatusData(1, monsterBaseData); // // SpawnMonster(); // SetMonsterStatus(); // } }