public void LoadGame() { m_cardManager = new CardManager(cardFile); m_mobManager = new MobManager(mobFile); m_characterManager = new CharacterManager(characterFile); Application.LoadLevel("game"); }
public void LoadEventInfo(MobManager mobManager, Storytrack storyTrack, EventInfo info) { ClearMobs(); m_st = storyTrack; m_info = info; foreach(string mobName in m_info.mobs) { MobInfo mobInfo = mobManager.GetMobByName(mobName); Mob mob = CreateMob(mobInfo, transform.position); if(mob == null) continue; m_mobs.Add(mob); } MoveMobsToSpawns(); }
public void SetMobManager(MobManager mobManager) { _mobManager = mobManager; }
// Use this for initialization void Start() { timer = atkspeed; aMobManager = FindObjectOfType<MobManager>(); target = aMobManager.AllMob[0].gameObject; }
void Start() { mobAnimator = GetComponent <Animator>(); rb = this.GetComponent <Rigidbody2D>(); targetPos = MobManager.GetPlayerPosition(); }
public void LoadLevel(string level) { ResetAllTheThings(); int loadedTiles = storyTrack.LoadStoryTrackJSON(level); if(loadedTiles > 0) { storyTrack.Display(); } if(m_debug) { m_debugCardManager = new CardManager("cards"); m_debugMobManager = new MobManager("mobs"); m_debugCharManager = new CharacterManager("characters"); } CharacterInfo info = characterManager.GetCharacterByName("squire"); Person p = new Person(info); characterManager.AddPersonToParty(p); playerHand.cardManager = cardManager; playerHand.level = this; m_state = TurnState.draw; }
// Use this for initialization void Start() { int index = Random.Range(0, 2); player = MobManager.GetPlayer(index); }
private void Awake() { instance = this; }
public int addNewMob(MobManager mob) { mobs.Add(mobs.Keys.Count, mob); return(mobs.Keys.Count); }
void Start() { timer = atkspeed; aMobManager = FindObjectOfType<MobManager>(); ChooseNearestMob(); }
private void Awake() { targetPos = MobManager.GetPlayerPosition(); }
public static Mob FindRandomMob(this MobManager mobManager, List <Mob> exludedMobs) { return(mobManager.FindRandomMobOfType <Mob>(exludedMobs)); }
public static void UpdatePlayerPositionData(sbyte[] packetData, int length) { try { if (!Mudclient.hasWorldInfo) { return; } MobManager.lastPlayerCount = MobManager.playerCount; for (int k = 0; k < MobManager.lastPlayerCount; k++) { MobManager.lastPlayerArray[k] = MobManager.playerArray[k]; } int off = 8; Mudclient.SectionX = DataOperations.getBits(packetData, off, 11); off += 11; Mudclient.SectionY = DataOperations.getBits(packetData, off, 13); off += 13; int sprite = DataOperations.getBits(packetData, off, 4); off += 4; // boolean sectionLoaded = loadSection(sectionX, sectionY); Debug.Log("Before Load"); var sectionLoaded = Mudclient.LoadSection(Mudclient.SectionX, Mudclient.SectionY); Mudclient.SectionX -= Mudclient.AreaX; Mudclient.SectionY -= Mudclient.AreaY; int mapEnterX = Mudclient.SectionX * 128 + 64; int mapEnterY = Mudclient.SectionY * 128 + 64; if (sectionLoaded) { Mudclient.TerrainUpdateNecessary = true; if (MobManager.MyPlayer == null) { MobManager.MyPlayer = new Player(); } MobManager.MyPlayer.CurrentSprite = sprite; MobManager.MyPlayer.currentX = mapEnterX; MobManager.MyPlayer.currentY = mapEnterY; // MobManager.MyPlayer.SectionX } MobManager.playerCount = 0; int newPlayerCount = DataOperations.getBits(packetData, off, 16); // off += 8; off += 16; for (int currentNewPlayer = 0; currentNewPlayer < newPlayerCount; currentNewPlayer++) { //Mob mob = lastPlayerArray[currentNewPlayer + 1]; Mob mob = MobManager.GetLastPlayer(DataOperations.getBits(packetData, off, 16)); off += 16; int playerAtTile = DataOperations.getBits(packetData, off, 1); off++; if (playerAtTile != 0) { int waypointsLeft = DataOperations.getBits(packetData, off, 1); off++; if (waypointsLeft == 0) { int currentNextSprite = DataOperations.getBits(packetData, off, 3); off += 3; int currentWaypoint = mob.WaypointCurrent; int newWaypointX = mob.WaypointsX[currentWaypoint]; int newWaypointY = mob.WaypointsY[currentWaypoint]; if (currentNextSprite == 2 || currentNextSprite == 1 || currentNextSprite == 3) { newWaypointX += Mudclient.gridSize; } if (currentNextSprite == 6 || currentNextSprite == 5 || currentNextSprite == 7) { newWaypointX -= Mudclient.gridSize; } if (currentNextSprite == 4 || currentNextSprite == 3 || currentNextSprite == 5) { newWaypointY += Mudclient.gridSize; } if (currentNextSprite == 0 || currentNextSprite == 1 || currentNextSprite == 7) { newWaypointY -= Mudclient.gridSize; } mob.NextSprite = currentNextSprite; mob.WaypointCurrent = currentWaypoint = (currentWaypoint + 1) % 10; mob.WaypointsX[currentWaypoint] = newWaypointX; mob.WaypointsY[currentWaypoint] = newWaypointY; } else { int needsNextSprite = DataOperations.getBits(packetData, off, 4); off += 4; if ((needsNextSprite & 0xc) == 12) { continue; } mob.NextSprite = needsNextSprite; } } MobManager.playerArray[MobManager.playerCount++] = mob; } int mobCount = 0; while (off + 24 < length * 8) { int mobIndex = DataOperations.getBits(packetData, off, 16); off += 16; int areaMobX = DataOperations.getBits(packetData, off, 5); off += 5; if (areaMobX > 15) { areaMobX -= 32; } int areaMobY = DataOperations.getBits(packetData, off, 5); off += 5; if (areaMobY > 15) { areaMobY -= 32; } int mobSprite = DataOperations.getBits(packetData, off, 4); off += 4; int addIndex = DataOperations.getBits(packetData, off, 1); off++; int mobX = (Mudclient.SectionX + areaMobX) * Mudclient.gridSize + 64; int mobY = (Mudclient.SectionY + areaMobY) * Mudclient.gridSize + 64; MobManager.CreatePlayer(mobIndex, mobX, mobY, mobSprite); if (addIndex == 0) { MobManager.playerBufferArrayIndexes[mobCount++] = mobIndex; } } if (mobCount > 0) { Mudclient.Instance.streamClass.createPacket(74); Mudclient.Instance.streamClass.addShort(mobCount); for (int currentMob = 0; currentMob < mobCount; currentMob++) { Mob dummyMob = MobManager.playerBufferArray[MobManager.playerBufferArrayIndexes[currentMob]]; Mudclient.Instance.streamClass.addShort(dummyMob.ServerIndex); Mudclient.Instance.streamClass.addShort(dummyMob.WornItemsID); } Mudclient.Instance.streamClass.formatPacket(); Mudclient.Instance.streamClass.createPacket(14); // 83 Mudclient.Instance.streamClass.addShort(mobCount); for (int k40 = 0; k40 < mobCount; k40++) { Mob f5 = MobManager.playerBufferArray[MobManager.playerBufferArrayIndexes[k40]]; Mudclient.Instance.streamClass.addShort(f5.ServerIndex); Mudclient.Instance.streamClass.addShort(f5.ServerID); } Mudclient.Instance.streamClass.formatPacket(); mobCount = 0; } } catch (Exception exc) { Debug.LogException(exc); } }
public static void UpdateNpcPositionData(sbyte[] data, int length) { try { MobManager.lastNpcCount = MobManager.npcCount; MobManager.npcCount = 0; for (int lastNpcIndex = 0; lastNpcIndex < MobManager.lastNpcCount; lastNpcIndex++) { MobManager.lastNpcArray[lastNpcIndex] = MobManager.npcArray[lastNpcIndex]; } // MobManager.LastNpcList = MobManager.NpcList.ToList(); // .ToList() to force it to make it into a copy // MobManager.NpcList.Clear(); int newNpcOffset = 8; int newNpcCount = DataOperations.getBits(data, newNpcOffset, 16); newNpcOffset += 16; for (int newNpcIndex = 0; newNpcIndex < newNpcCount; newNpcIndex++) { int serverIndex = DataOperations.getBits(data, newNpcOffset, 16); Mob newNPC = MobManager.GetLastNpc(serverIndex); newNpcOffset += 16; int npcNeedsUpdate = DataOperations.getBits(data, newNpcOffset, 1); newNpcOffset++; if (npcNeedsUpdate != 0) { int i32 = DataOperations.getBits(data, newNpcOffset, 1); newNpcOffset++; if (i32 == 0) { int nextSprite = DataOperations.getBits(data, newNpcOffset, 3); newNpcOffset += 3; int waypointCurrent = newNPC.WaypointCurrent; int waypointX = newNPC.WaypointsX[waypointCurrent]; int waypointY = newNPC.WaypointsY[waypointCurrent]; if (nextSprite == 2 || nextSprite == 1 || nextSprite == 3) { waypointX += 128; } if (nextSprite == 6 || nextSprite == 5 || nextSprite == 7) { waypointX -= 128; } if (nextSprite == 4 || nextSprite == 3 || nextSprite == 5) { waypointY += 128; } if (nextSprite == 0 || nextSprite == 1 || nextSprite == 7) { waypointY -= 128; } newNPC.NextSprite = nextSprite; newNPC.WaypointCurrent = waypointCurrent = (waypointCurrent + 1) % 10; newNPC.WaypointsX[waypointCurrent] = waypointX; newNPC.WaypointsY[waypointCurrent] = waypointY; } else { int nextSpriteOffset = DataOperations.getBits(data, newNpcOffset, 4); newNpcOffset += 4; if ((nextSpriteOffset & 0xc) == 12) { continue; } newNPC.NextSprite = nextSpriteOffset; } } MobManager.npcArray[MobManager.npcCount++] = newNPC; //Mudclient.npcCount++; } while (newNpcOffset + 34 < length * 8) { int serverIndex = DataOperations.getBits(data, newNpcOffset, 16); newNpcOffset += 16; int offsetX = DataOperations.getBits(data, newNpcOffset, 5); newNpcOffset += 5; if (offsetX > 15) { offsetX -= 32; } int offsetY = DataOperations.getBits(data, newNpcOffset, 5); newNpcOffset += 5; if (offsetY > 15) { offsetY -= 32; } int nextSprite = DataOperations.getBits(data, newNpcOffset, 4); newNpcOffset += 4; int x = (Mudclient.SectionX + offsetX) * 128 + 64; int y = (Mudclient.SectionY + offsetY) * 128 + 64; int type = DataOperations.getBits(data, newNpcOffset, 10); newNpcOffset += 10; if (type >= Data.npcCount) { type = 24; } MobManager.CreateNPC(serverIndex, x, y, nextSprite, type); /* addNPC(serverIndex, x, y, nextSprite, type); */ } } catch { } }
void Start() { timer = atkspeed; aMobManager = FindObjectOfType <MobManager>(); ChooseNearestMob(); }
private void createSkill(string pathToEffect, Vector3 spawnPositionOffset, GameObject target, Vector3 rotationInEuler, string type, int range, Vector3 spawnPosition, MobManager m) { SkillCastInfo skillInfo = new SkillCastInfo(); skillInfo.pathToEffect = pathToEffect; skillInfo.offset = spawnPositionOffset; skillInfo.targetPosition = new Vector3(spawnPosition.x + spawnPositionOffset.x, spawnPosition.y + spawnPositionOffset.y, spawnPosition.z + spawnPositionOffset.z); //new Vector3(target.transform.position.x + spawnPositionOffset.x, target.transform.position.y + spawnPositionOffset.y, target.transform.position.z + spawnPositionOffset.z); skillInfo.rotationInEuler = rotationInEuler; skillInfo.netId = this.GetComponent <NetworkIdentity>().netId; skillInfo.skillType = type; skillInfo.range = range; GameObject o = spawnSkillEffect(skillInfo); o.transform.localScale = new Vector3(target.transform.lossyScale.x * 4, target.transform.lossyScale.y * 4, target.transform.lossyScale.z * 4); StartCoroutine(updateSkillPosition(target, o, spawnPositionOffset)); if (target != null) { skillInfo.enemyNetId = target.GetComponent <NetworkIdentity>().netId; o.GetComponent <SkillCastManager>().targetEntity = m; m.targeted = true; } con.Send(PacketTypes.CREATE_SKILL, skillInfo); }