public override void Initialize()
 {
     base.Initialize();
     ContextualId        = Fight.PopNextNonPlayerId();
     FighterLook         = Template.RealLook.CloneContextActorLook();
     RealFighterLook     = FighterLook.CloneContextActorLook();
     FighterStats        = Template.GetFighterStats(SpawnRecord.ActualGrade);
     FighterInformations = new GameFightMonsterInformations(ContextualId, FighterLook,
                                                            new EntityDispositionInformations(CellId, Direction),
                                                            (sbyte)Team.TeamColor, 0, true, FighterStats.GetMinimalStats(), new ushort[0], SpawnRecord.MonsterId, SpawnRecord.ActualGrade);
 }
 public void InitializeBomb(int summonerid, short cellid)
 {
     this.Direction           = 3;
     this.CellId              = cellid;
     this.ContextualId        = Fight.PopNextNonPlayerId();
     this.FighterLook         = MonsterTemplate.RealLook.CloneContextActorLook();
     this.RealFighterLook     = FighterLook.CloneContextActorLook();
     this.FighterStats        = MonsterTemplate.GetFighterStats(Grade, true, summonerid);
     this.FighterInformations = new GameFightMonsterInformations(ContextualId, FighterLook,
                                                                 new EntityDispositionInformations(CellId, Direction),
                                                                 (sbyte)Team.TeamColor, 0, true, FighterStats.GetMinimalStats(), new ushort[0], MonsterTemplate.Id, Grade);
 }
        public override void Initialize()
        {
            base.Initialize();
            ContextualId    = Client.Character.Id;
            FighterLook     = Client.Character.Look.CloneContextActorLook();
            RealFighterLook = FighterLook.CloneContextActorLook();
            FighterStats    = new FighterStats(Client.Character.StatsRecord);

            FighterInformations = new GameFightCharacterInformations(ContextualId, FighterLook.ToEntityLook(),
                                                                     new EntityDispositionInformations(CellId, Direction), (sbyte)Team.TeamColor,
                                                                     0, true, FighterStats.GetMinimalStats(), new ushort[0], Client.Character.Record.Name, new PlayerStatus(0),
                                                                     Client.Character.Record.Level, Client.Character.GetActorAlignement(), Client.Character.Record.Breed,
                                                                     Client.Character.Record.Sex);
        }
        public void InitializeSummon(int summonerid, short cellid)
        {
            this.Direction           = 3;
            this.CellId              = cellid;
            this.ContextualId        = Fight.PopNextNonPlayerId();
            this.FighterLook         = Template.RealLook.CloneContextActorLook();
            this.RealFighterLook     = FighterLook.CloneContextActorLook();
            this.FighterStats        = Template.GetFighterStats(SpawnRecord.ActualGrade, true, summonerid);
            this.FighterInformations = new GameFightMonsterInformations(ContextualId, FighterLook,
                                                                        new EntityDispositionInformations(CellId, Direction),
                                                                        (sbyte)Team.TeamColor, 0, true, FighterStats.GetMinimalStats(), new ushort[0], SpawnRecord.MonsterId, SpawnRecord.ActualGrade);

            foreach (var spell in Template.Spells)
            {
                var level = GetSpellLevel(spell);
                if (level.InitialCooldown > 0)
                {
                    AddCooldownOnSpell(level.SpellId, (sbyte)level.InitialCooldown);
                }
            }
        }