Beispiel #1
0
        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;
            }
        }
Beispiel #2
0
 public void StartBattle(Battle battle)
 {
     if (BattleLayout == null)
     {
         InitPartyBattleLayout();
     }
     foreach (PartyMember partyMember in this)
     {
         partyMember.StartBattle();
         partyMember.EquipDefaultWeapon(this);
         battle.AddBattleEntity(partyMember.BattleEntity);
     }
 }