private void _createEnemyPartyMember(object[] args) { // createEnemyPartyMember(string actorPartyMemberSelector, string partyMemberName, int relativeLayoutIndex, bool addParticleEffect) string actorPartyMemberSelector = (string)args[0]; string partyMemberName = (string)args[1]; int relativeLayoutIndex = (int)args[2]; bool addParticleEffect = (bool)args[3]; PartyMember actor = getPartyMemberFromSelector(actorPartyMemberSelector); PartyMember partyMember = ResourceManager.GetNewPartyMember(partyMemberName); battle.EnemyParty.AddPartyMember(partyMember); partyMember.StartBattle(); partyMember.EquipDefaultWeapon(battle.EnemyParty); battle.AddBattleEntity(partyMember.BattleEntity); List <PartyMember> actorList = battle.EnemyPartyLayout.GetListWithPartyMember(actor); List <PartyMember> newList = battle.EnemyPartyLayout.RelativeList(actorList, relativeLayoutIndex); newList.Add(partyMember); battle.RepositionPartyMembers(); if (addParticleEffect) { ParticleEffect particleEffect = ParticleEffect.AddSmokePuff(partyMember.BattleEntity.GetCenter(), battle); particleEffect.DepthOverride = partyMember.BattleEntity.Position.Y + 5.0f; } }
public void StartBattle(Battle battle) { if (BattleLayout == null) { InitPartyBattleLayout(); } foreach (PartyMember partyMember in this) { partyMember.StartBattle(); partyMember.EquipDefaultWeapon(this); battle.AddBattleEntity(partyMember.BattleEntity); } }