Exemplo n.º 1
0
        public int Run(uint nwnObjectId)
        {
            if (TemplateItem.Initialized(nwnObjectId))
            {
                return(0);
            }

            if (NWScript.GetItemPossessedBy(nwnObjectId, "platinum_token") == NWScript.OBJECT_INVALID)
            {
                NWScript.SendMessageToPC(nwnObjectId, "This subrace requires DM permission to play.");
                return(0);
            }

            if (NWScript.GetRacialType(nwnObjectId) != NWScript.RACIAL_TYPE_ELF)
            {
                NWScript.SendMessageToPC(nwnObjectId, "Fey'ri only works with the Moon Elf base race.");
                return(0);
            }

            NWScript.CreateItemOnObject(TemplateItem.TemplateItemResRef, nwnObjectId);

            SetSubraceModifiers(nwnObjectId);

            var templateRunner = new TemplateRunner();

            templateRunner.Run(nwnObjectId);
            CreaturePlugin.SetRacialType(nwnObjectId, NWScript.RACIAL_TYPE_OUTSIDER);
            CreaturePlugin.AddFeatByLevel(nwnObjectId, 228, 1);

            return(0);
        }
Exemplo n.º 2
0
        public int Run(uint nwnObjectId)
        {
            if (TemplateItem.Initialized(nwnObjectId))
            {
                return(0);
            }

            if (NWScript.GetItemPossessedBy(nwnObjectId, "platinum_token") == NWScript.OBJECT_INVALID)
            {
                NWScript.SendMessageToPC(nwnObjectId, "This subrace requires DM permission to play.");
                return(0);
            }

            if (NWScript.GetRacialType(nwnObjectId) != NWScript.RACIAL_TYPE_HUMAN)
            {
                NWScript.SendMessageToPC(nwnObjectId, "Lizardfolk only works with the Non-Regional Human base race.");
                return(0);
            }

            NWScript.CreateItemOnObject(TemplateItem.TemplateItemResRef, nwnObjectId);

            SetSubraceModifiers(nwnObjectId);

            var templateRunner = new TemplateRunner();

            CreaturePlugin.SetRacialType(nwnObjectId, NWScript.RACIAL_TYPE_HUMANOID_REPTILIAN);

            templateRunner.Run(nwnObjectId);

            return(0);
        }
Exemplo n.º 3
0
 public static void AddFeat(this NwCreature creature, Feat feat, int level = 0)
 {
     if (level > 0)
     {
         CreaturePlugin.AddFeatByLevel(creature, (int)feat, level);
     }
     else
     {
         CreaturePlugin.AddFeat(creature, (int)feat);
     }
 }
Exemplo n.º 4
0
        public int Run(uint nwnObjectId)
        {
            if (TemplateItem.Initialized(nwnObjectId))
            {
                return(0);
            }

            NWScript.CreateItemOnObject(TemplateItem.TemplateItemResRef, nwnObjectId);

            CreaturePlugin.SetRacialType(nwnObjectId, NWScript.RACIAL_TYPE_OUTSIDER);
            CreaturePlugin.AddFeatByLevel(nwnObjectId, 228, 1);
            SetSubRaceMod(nwnObjectId);

            var templateRunner = new TemplateRunner();

            templateRunner.Run(nwnObjectId);

            return(0);
        }
 public void SetupStats(Player player)
 {
     CreaturePlugin.ModifyRawAbilityScore(player.ObjectId, NWScript.ABILITY_CONSTITUTION, 2);
     CreaturePlugin.ModifyRawAbilityScore(player.ObjectId, NWScript.ABILITY_CHARISMA, 2);
 }
 public void SetupStats(Player player)
 {
     CreaturePlugin.ModifyRawAbilityScore(player.ObjectId, NWScript.ABILITY_WISDOM, 2);
 }
Exemplo n.º 7
0
        public void SetupStats(Player player)
        {
            var playerId = player.ObjectId;

            CreaturePlugin.ModifyRawAbilityScore(playerId, NWScript.ABILITY_STRENGTH, 1);
        }
Exemplo n.º 8
0
 public static bool DeserializeQuickbar(this NwCreature creature, string serializedQuickbar)
 {
     return(CreaturePlugin.DeserializeQuickbar(creature, serializedQuickbar).ToBool());
 }
Exemplo n.º 9
0
 public static string SerializeQuickbar(this NwCreature creature)
 {
     return(CreaturePlugin.SerializeQuickbar(creature));
 }
Exemplo n.º 10
0
 public static ClassType GetClassByLevel(this NwCreature creature, int level)
 {
     return((ClassType)CreaturePlugin.GetClassByLevel(creature, level));
 }
Exemplo n.º 11
0
 public static void ClearMemorisedSpell(this NwCreature creature, ClassType classType, int spellLevel, int index)
 {
     CreaturePlugin.ClearMemorisedSpell(creature, (int)classType, spellLevel, index);
 }
Exemplo n.º 12
0
 public static int GetMemorisedSpellCountByLevel(this NwCreature creature, ClassType classType, int spellLevel)
 {
     return(CreaturePlugin.GetMemorisedSpellCountByLevel(creature, (int)classType, spellLevel));
 }
Exemplo n.º 13
0
 public static int GetFeatGrantLevel(this NwCreature creature, Feat feat)
 {
     return(CreaturePlugin.GetFeatGrantLevel(creature, (int)feat));
 }
Exemplo n.º 14
0
 public static void RemoveFeat(this NwCreature creature, Feat feat)
 {
     CreaturePlugin.RemoveFeat(creature, (int)feat);
 }
Exemplo n.º 15
0
 public static bool KnowsFeat(this NwCreature creature, Feat feat)
 {
     return(CreaturePlugin.GetKnowsFeat(creature, (int)feat).ToBool());
 }
Exemplo n.º 16
0
 private void UpdateAbility(int ability, int newAbilityValue)
 {
     CreaturePlugin.SetRawAbilityScore(ObjectId, ability, newAbilityValue);
 }