Exemple #1
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "magicMissle",
         "magicMissle",
         "magicMissle",
         new[] { "damage", "target", "magic", "pure", "ranged", "direct" },
         8,
         3,
         4,
         60,
         new Targets()
     {
         Allies      = true,
         NotAllies   = true,
         Unbearable  = true,
         Bearable    = true,
         Decorations = true
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         targetTile.DoDamageSkill(skill);
     });
 }
Exemple #2
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "bloodsphere",
         "bloodsphere",
         "mistsphere",
         new[] { "damage", "target", "magic", "blood", "ranged", "direct" },
         8,
         3,
         0,
         60,
         new Targets()
     {
         Allies      = true,
         NotAllies   = true,
         Unbearable  = true,
         Bearable    = true,
         Decorations = true
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         owner.Damage(10, skill.AggregatedTags);
         targetTile.DoDamageSkill(skill);
     });
 }
Exemple #3
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "warden",
         "warden",
         "warden",
         new[] { "damage", "target", "physic", "ranged", "direct" },
         6,
         3,
         4,
         65,
         new Targets()
     {
         Allies      = true,
         NotAllies   = true,
         Unbearable  = true,
         Bearable    = true,
         Decorations = true
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         targetTile.DoDamageAttack(skill);
     });
 }
Exemple #4
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "powerplace",
         "powerplace",
         "powerplace",
         new[] { "target", "tile", "buff", "magic", "alteration" },
         4,
         3,
         3,
         0,
         new Targets()
     {
         Bearable    = true,
         Allies      = true,
         NotAllies   = true,
         Decorations = true,
         Self        = true
     },
         false,
         (scene, owner, targetTile, skill) =>
     {
         scene.ChangeTile("powerplace", targetTile.X, targetTile.Y, targetTile.Height, owner.Owner);
     });
 }
Exemple #5
0
 private static void AddNatives(INativeManager nativeManager)
 {
     nativeManager.AddTileNative("test_wall", new string[0], false, 100, true, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h1", new string[0], false, 9, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h2", new string[0], false, 18, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h3", new string[0], false, 27, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h4", new string[0], false, 36, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h5", new string[0], false, -9, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h6", new string[0], false, -18, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h7", new string[0], false, -27, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_h8", new string[0], false, -36, false, 1, true, null, null);
     nativeManager.AddTileNative("test_tile_effect", new string[0], false, 0, false, 10, true, DoDamage, DoDamageOnStep);
     nativeManager.AddTileNative("test_tile", new string[0], false, 0, false, 1, true, null, null);
     nativeManager.AddActorNative("test_actor", "test_actor", "test_actor", new string[] { "test_actor_tag" }, 0, new TagSynergy[] { new TagSynergy("test_skill_tag", 0.5f) });
     nativeManager.AddEffectNative("test_effect", "test_effect", new string[0], 0, null, 10, DoDamageTempTile, DoDamageTempTileDeath);
     nativeManager.AddDecorationNative("test_decoration", "test_decoration", new string[0], new TagSynergy[] { }, 100, 0, 10, DoSelfDamage, DoSelfDamage);
     nativeManager.AddSkillNative("test_actor_attack", "test_actor_attack", "test_actor_attack", new string[0], 1, 1, 0, 75, new Targets()
     {
         NotAllies = true, Allies = true, Bearable = true, Unbearable = true, Self = true
     }, false, DoDamageAttack);
     nativeManager.AddSkillNative("test_actor_attack_range", "test_actor_attack_range", "test_actor_attack_range", new string[0], 4, 1, 0, 12.5f, new Targets()
     {
         NotAllies = true, Allies = true, Bearable = true, Unbearable = true, Self = true
     }, false, DoDamageAttack);
     nativeManager.AddSkillNative("test_actor_skill", "test_actor_skill", "test_actor_skill", new string[] { "test_skill_tag" }, 1, 1, 0, 60, new Targets()
     {
         NotAllies = true, Allies = true, Bearable = true, Unbearable = true, Self = true
     }, false, DoDamageSkill);
     nativeManager.AddSkillNative("test_actor_skill_range", "test_actor_skill_range", "test_actor_skill_range", new string[0], 4, 2, 2, 10, new Targets()
     {
         NotAllies = true, Allies = true, Bearable = true, Unbearable = true, Self = true
     }, false, DoDamageSkill);
     nativeManager.AddBuffNative("test_buff_default", new string[] { "buff" }, false, 1, false, false, null, 1, null, AddStats, DamageSelfPurge);
     nativeManager.AddBuffNative("test_buff_duration", new string[] { "buff" }, false, 1, false, false, 1, 1, null, null, null);
     nativeManager.AddBuffNative("test_buff_eternal", new string[] { "item" }, true, 1, false, false, null, 1, null, AddMaxHealth, DamageSelfPurge);
     nativeManager.AddBuffNative("test_buff_multiple", new string[] { "buff" }, false, 4, false, false, null, 1, null, AddMaxHealth, null);
     nativeManager.AddBuffNative("test_buff_summarize", new string[] { "buff" }, false, 1, true, false, null, 1, null, AddMaxHealth, null);
     nativeManager.AddBuffNative("test_debuff", new string[] { "debuff" }, false, 1, false, false, null, 1, DamageSelf, null, DamageSelfPurge);
     nativeManager.AddRoleModelNative("test_roleModel", 10, 10, 10, 10, 4, "test_actor_attack", new string[] { "test_actor_skill" });
 }
Exemple #6
0
        public void Fill(INativeManager nativeManager)
        {
            nativeManager.AddSkillNative(
                "charge",
                "charge",
                "charge",
                new[] { "damage", "target", "movement", "control", "weapon", "direct", "physic" },
                7,
                4,
                3,
                10,
                new Targets()
            {
                Allies      = true,
                NotAllies   = true,
                Bearable    = true,
                Decorations = true
            },
                true,
                (scene, owner, targetTile, skill) =>
            {
                targetTile.DoDamageAttack(skill);
                if (Misc.RangeBetween(owner.X, owner.Y, targetTile.X, targetTile.Y) >= 2)
                {
                    targetTile.AddBuff("stun", 0, 1, true);
                }

                var angle  = Misc.AngleBetween(targetTile.X, targetTile.Y, owner.X, owner.Y);
                var sin    = (float)Math.Sin(angle);
                var cos    = (float)Math.Cos(angle);
                var x      = (float)targetTile.X;
                var y      = (float)targetTile.Y;
                var xRound = targetTile.X;
                var yRound = targetTile.Y;
                while (scene.Tiles[xRound][yRound].TempObject != null)
                {
                    x     += cos;
                    y     += sin;
                    xRound = (int)Math.Round(x, MidpointRounding.AwayFromZero);
                    yRound = (int)Math.Round(y, MidpointRounding.AwayFromZero);
                }

                owner.ChangePosition(scene.Tiles[(int)Math.Round(x, MidpointRounding.AwayFromZero)][(int)Math.Round(y, MidpointRounding.AwayFromZero)], true);
            });
        }
Exemple #7
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "offspring",
         "offspring",
         "mistoffspring",
         new[] { "target", "summon", "magic", "blood" },
         1,
         2,
         4,
         0.2f,
         new Targets()
     {
         Bearable = true
     },
         false,
         (scene, owner, targetTile, skill) =>
     {
         var mod = (int)Math.Ceiling(owner.Constitution * skill.Mod);
         scene.CreateActor(
             owner.Owner as Player,
             null,
             "offspring",
             new RoleModelNative(
                 scene.NativeManager,
                 "offspring",
                 mod,
                 2,
                 mod,
                 30,
                 5,
                 "slash",
                 new string[]
         {
             "sacrifice"
         }),
             targetTile,
             null,
             null,
             null);
         owner.Damage(mod * scene.VarManager.ConstitutionMod, skill.AggregatedTags);
     });
 }
Exemple #8
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "barrier",
         "barrier",
         "barrier",
         new[] { "target", "decoration", "magic", "alteration" },
         4,
         2,
         0,
         0,
         new Targets()
     {
         Bearable = true
     },
         false,
         (scene, owner, targetTile, skill) =>
     {
         scene.CreateDecoration(owner.Owner as Player, "barrier", targetTile, null, null, null, null, null);
     });
 }
Exemple #9
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "mistpact",
         "mistpact",
         "mistsummon",
         new[] { "target", "summon", "magic", "pure" },
         1,
         2,
         8,
         1,
         new Targets()
     {
         Bearable = true
     },
         false,
         (scene, owner, targetTile, skill) =>
     {
         scene.CreateActor(owner.Owner as Player, "mistspawn", "mistspawn", targetTile, null, null, null);
     });
 }
Exemple #10
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "mistwalk",
         "mistwalk",
         "mistwalk",
         new[] { "target", "movement", "magic", "alteration" },
         10,
         1,
         5,
         0,
         new Targets()
     {
         Bearable = true
     },
         false,
         (scene, owner, targetTile, skill) =>
     {
         owner.ChangePosition(targetTile, true);
     });
 }
Exemple #11
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "wand",
         "wand",
         "wand",
         new[] { "damage", "target", "weapon", "magic", "pure", "ranged", "direct" },
         6,
         2,
         0,
         24,
         new Targets()
     {
         NotAllies   = true,
         Decorations = true
     },
         false,
         (scene, owner, targetTile, skill) =>
     {
         targetTile.DoDamageSkill(skill);
     });
 }
Exemple #12
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "shot",
         "shot",
         "shot",
         new[] { "damage", "target", "weapon", "physic", "ranged", "direct" },
         8,
         2,
         0,
         26,
         new Targets()
     {
         NotAllies   = true,
         Decorations = true
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         targetTile.DoDamageAttack(skill);
     });
 }
Exemple #13
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "slash",
         "slash",
         "slash",
         new[] { "damage", "target", "weapon", "melee", "physic" },
         1,
         2,
         0,
         30,
         new Targets()
     {
         NotAllies   = true,
         Decorations = true,
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         targetTile.DoDamageAttack(skill);
     });
 }
Exemple #14
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "empower",
         "empower",
         "empower",
         new[] { "target", "buff", "magic", "pure" },
         8,
         3,
         8,
         0.5f,
         new Targets()
     {
         Allies    = true,
         NotAllies = true,
         Self      = true
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         var mod = owner.SkillPower;
         targetTile.AddBuff("empower", mod * skill.Mod, 3, false);
     });
 }
Exemple #15
0
 public void Fill(INativeManager nativeManager)
 {
     nativeManager.AddSkillNative(
         "sacrifice",
         "sacrifice",
         "mistsacrifice",
         new[] { "target", "heal", "magic", "blood" },
         1,
         1,
         0,
         -1,
         new Targets()
     {
         Allies      = true,
         NotAllies   = true,
         Decorations = true
     },
         true,
         (scene, owner, targetTile, skill) =>
     {
         targetTile.TempObject.Damage(skill.Mod * owner.DamageModel.Health, skill.AggregatedTags);
         owner.Damage(owner.MaxHealth, new string[0]);
     });
 }