Example #1
0
        public AncientMawdawc(Map.World world, PowerContext context, int AncientsID)
            : base(world, 90536, context.User, null)
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            (Brain as MinionBrain).AddPresetPower(30592);  //Weapon_Instant
            (Brain as MinionBrain).AddPresetPower(187092); //basic melee
            (Brain as MinionBrain).AddPresetPower(168827); //Seismic Slam //Only Active with Rune_C
            (Brain as MinionBrain).AddPresetPower(168828); //Weapon Throw
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max]      = 20f;
            Attributes[GameAttribute.Hitpoints_Cur]      = 20f;
            Attributes[GameAttribute.Attacks_Per_Second] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min, 0]   = context.ScriptFormula(11) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = AncientsID,
                PetId  = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #2
0
        public AcidCloudSlime(Map.World world, PowerContext context, int SlimeID)
            : base(world, 120950, context.User, null)
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max_Total]        = 20f;
            Attributes[GameAttribute.Hitpoints_Max]              = 20f;
            Attributes[GameAttribute.Hitpoints_Total_From_Level] = 0f;
            Attributes[GameAttribute.Hitpoints_Cur]              = 20f;
            Attributes[GameAttribute.Attacks_Per_Second_Total]   = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min_Total, 0]   = context.ScriptFormula(11) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = SlimeID,
                PetId  = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #3
0
        public AncientTalic(Map.World world, PowerContext context, int AncientsID)
            : base(world, 90535, context.User, null)
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 3;
            SetBrain(new MinionBrain(this));
            (Brain as MonsterBrain).AddPresetPower(30592);  //Weapon_Instant
            (Brain as MonsterBrain).AddPresetPower(187092); //basic melee
            (Brain as MonsterBrain).AddPresetPower(168825); //Leap //Only Active with Rune_E
            (Brain as MonsterBrain).AddPresetPower(168830); //WhirlWind
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max_Total] = 20f;
            Attributes[GameAttribute.Hitpoints_Max] = 20f;
            Attributes[GameAttribute.Hitpoints_Total_From_Level] = 0f;
            Attributes[GameAttribute.Hitpoints_Cur] = 20f;
            Attributes[GameAttribute.Attacks_Per_Second_Total] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min_Total, 0] = context.ScriptFormula(11) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = AncientsID,
                PetId = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #4
0
        //107031, 106731, 106749, 107067, 107107, 107112

        public CorpseSpider(Map.World world, PowerContext context, int SpiderID)
            : base(world, 107031, context.User, null)
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            (Brain as MinionBrain).AddPresetPower(30592);  //melee_instant
            (Brain as MinionBrain).AddPresetPower(30005);  //AINearby
            (Brain as MinionBrain).AddPresetPower(107103); //Spider_leap
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max]      = 20f;
            Attributes[GameAttribute.Hitpoints_Cur]      = 20f;
            Attributes[GameAttribute.Attacks_Per_Second] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min, 0]   = context.ScriptFormula(16) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta, 0] = context.ScriptFormula(17) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = SpiderID,
                PetId  = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #5
0
        //female ->123885
        //male -> 169904

        public MysticAllyMinion(Map.World world, PowerContext context, int MysticAllyID)
            : base(world, 123885, context.User, null)
        {
            Scale = 1.35f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            (Brain as MinionBrain).AddPresetPower(169081); //melee_instant
            (Brain as MinionBrain).AddPresetPower(169155); //Rune_aKick
            (Brain as MinionBrain).AddPresetPower(169325); //Rune_bWaveAttack
            (Brain as MinionBrain).AddPresetPower(169715); //Rune_cGroundPunch
            (Brain as MinionBrain).AddPresetPower(169728); //Rune_dAoeAttack
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max_Total]        = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Hitpoints_Max_Total];
            Attributes[GameAttribute.Hitpoints_Max]              = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Hitpoints_Max_Total];
            Attributes[GameAttribute.Hitpoints_Total_From_Level] = 0f;
            Attributes[GameAttribute.Hitpoints_Cur]              = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Hitpoints_Max_Total];
            Attributes[GameAttribute.Attacks_Per_Second_Total]   = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min_Total, 0] = context.ScriptFormula(1);
            //Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = MysticAllyID,
                PetId  = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #6
0
        //107031, 106731, 106749, 107067, 107107, 107112

        public CorpseSpider(Map.World world, PowerContext context, int SpiderID)
            : base(world, 107031, context.User, null)
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            (Brain as MinionBrain).AddPresetPower(30592); //melee_instant
            (Brain as MinionBrain).AddPresetPower(30005); //AINearby
            (Brain as MinionBrain).AddPresetPower(107103); //Spider_leap
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max_Total] = 20f;
            Attributes[GameAttribute.Hitpoints_Max] = 20f;
            Attributes[GameAttribute.Hitpoints_Total_From_Level] = 0f;
            Attributes[GameAttribute.Hitpoints_Cur] = 20f;
            Attributes[GameAttribute.Attacks_Per_Second_Total] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min_Total, 0] = context.ScriptFormula(16) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0] = context.ScriptFormula(17) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = SpiderID,
                PetId = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #7
0
        public ZombieDog(Map.World world, PowerContext context, int dogID)
            : base(world, 51353, context.User, null)
        {
            Scale = 1.35f;
            //TODO: get a proper value for this.
            this.WalkSpeed *= 3;
            SetBrain(new MinionBrain(this));
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max_Total] = 20f;
            Attributes[GameAttribute.Hitpoints_Max] = 20f;
            Attributes[GameAttribute.Hitpoints_Total_From_Level] = 0f;
            Attributes[GameAttribute.Hitpoints_Cur] = 20f;
            Attributes[GameAttribute.Attacks_Per_Second_Total] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min_Total, 0] = context.ScriptFormula(11) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = dogID,
                PetId = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #8
0
        //female ->123885
        //male -> 169904

        public MysticAllyMinion(Map.World world, PowerContext context, int MysticAllyID)
            : base(world, 123885, context.User, null)
        {
            Scale = 1.35f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            (Brain as MinionBrain).AddPresetPower(169081); //melee_instant
            (Brain as MinionBrain).AddPresetPower(169155); //Rune_aKick
            (Brain as MinionBrain).AddPresetPower(169325); //Rune_bWaveAttack
            (Brain as MinionBrain).AddPresetPower(169715); //Rune_cGroundPunch
            (Brain as MinionBrain).AddPresetPower(169728); //Rune_dAoeAttack
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max_Total] = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Hitpoints_Max_Total];
            Attributes[GameAttribute.Hitpoints_Max] = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Hitpoints_Max_Total];
            Attributes[GameAttribute.Hitpoints_Total_From_Level] = 0f;
            Attributes[GameAttribute.Hitpoints_Cur] = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Hitpoints_Max_Total];
            Attributes[GameAttribute.Attacks_Per_Second_Total] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min_Total, 0] = context.ScriptFormula(1);
            //Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = MysticAllyID,
                PetId = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #9
0
        public MirrorImageMinion(Map.World world, PowerContext context, int ImageID)
            : base(world, 98010, context.User, null) //male Mirror images
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max] = 20f;
            Attributes[GameAttribute.Hitpoints_Cur] = 20f;
            Attributes[GameAttribute.Attacks_Per_Second] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min, 0] = context.ScriptFormula(11) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];
            Attributes[GameAttribute.Damage_Weapon_Delta, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = ImageID,
                PetId = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #10
0
        public ZombieDog(Map.World world, PowerContext context, int dogID)
            : base(world, 51353, context.User, null)
        {
            Scale = 1.35f;
            //TODO: get a proper value for this.
            this.WalkSpeed *= 3;
            SetBrain(new MinionBrain(this));
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max]      = 20f;
            Attributes[GameAttribute.Hitpoints_Cur]      = 20f;
            Attributes[GameAttribute.Attacks_Per_Second] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min, 0]   = 5f;
            Attributes[GameAttribute.Damage_Weapon_Delta, 0] = context.ScriptFormula(13) * context.User.Attributes[GameAttribute.Damage_Weapon_Delta_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = dogID,
                PetId  = this.DynamicID,
                Field3 = 0x8,
            });
        }
Example #11
0
        //Changes creature with each rune,
        //RuneSelect(133741, 173827, 181748, 159098, 159102, 159144)

        public CompanionMinion(Map.World world, PowerContext context, int CompanionID)
            : base(world, 133741, context.User, null)
        {
            Scale = 1.2f; //they look cooler bigger :)
            //TODO: get a proper value for this.
            this.WalkSpeed *= 5;
            SetBrain(new MinionBrain(this));
            (Brain as MinionBrain).AddPresetPower(169081); //melee_instant
            (Brain as MinionBrain).AddPresetPower(133887); //ChargeAttack
            //TODO: These values should most likely scale, but we don't know how yet, so just temporary values.
            Attributes[GameAttribute.Hitpoints_Max] = 20f;
            Attributes[GameAttribute.Hitpoints_Cur] = 20f;
            Attributes[GameAttribute.Attacks_Per_Second] = 1.0f;

            Attributes[GameAttribute.Damage_Weapon_Min, 0] = context.ScriptFormula(0) * context.User.Attributes[GameAttribute.Damage_Weapon_Min_Total, 0];

            Attributes[GameAttribute.Pet_Type] = 0x8;
            //Pet_Owner and Pet_Creator seems to be 0
            (context.User as Player).InGameClient.SendMessage(new PetMessage()
            {
                Field0 = 0,
                Field1 = CompanionID,
                PetId = this.DynamicID,
                Field3 = 0x8,
            });
        }