public CombatCharacter() { ID = Guid.NewGuid().ToString(); Name = "Enemy"; ProgressionGain = new ProgressionGain(); MaxItemsFromLootTable = 1; ReputationId = "Core_EnemyReputation"; PrefabReplacementOnDeath = ""; IsAggressive = false; CharacterType = CharacterType.Enemy; GuaranteedLoot = new List <LootDefinition>(); LootTables = new List <LootOptions>(); EnemySkills = new List <Rm_NPCSkill>(); NpcDamage = new Damage() { MaxDamage = 1, MinDamage = 1 }; AttackCounter = 1; RetreatsWhenLow = false; ProjectileTravelSound = new AudioContainer(); AutoAttackImpactSound = new AudioContainer(); ProjectileSpeed = 10f; TauntHandler = new TauntHandler(); CharPrefabPath = ""; OverrideAggroRadius = false; OverrideAggroRadiusValue = 25f; }
public Harvestable() { ID = Guid.NewGuid().ToString(); Name = "New Harvestable"; QuestAcceptedID = ""; HarvestedObjectID = null; TimeToHarvest = 5; MinObtainable = 5; MaxObtainable = 10; ClassHarvestingAnims = new List <ClassAnimationDefinition>(); ProgressionGain = new ProgressionGain(); ProgressionGain.GainExp = false; }
public void AddProgression(ProgressionGain progressionGain) { if (progressionGain.GainExp) { if (progressionGain.GainExpWithDefinition) { var expDefinition = Rm_RPGHandler.Instance.Experience.AllExpDefinitions.FirstOrDefault(e => e.ID == progressionGain.GainExpWithDefinitionID); if (expDefinition != null) { var expToAward = expDefinition.ExpForLevel(progressionGain.CombatantLevel); AddExp(expToAward); } else { Debug.LogError("Could not find exp definition to award exp. ID:" + progressionGain.GainExpWithDefinition); } } else { AddExp(progressionGain.ExpGained); } } if (progressionGain.GainSkillPoints) { if (progressionGain.GainSkillWithDefinition) { var expDefinition = Rm_RPGHandler.Instance.Experience.AllExpDefinitions.FirstOrDefault(e => e.ID == progressionGain.GainSkillWithDefinitionID); if (expDefinition != null) { var expToAward = expDefinition.ExpForLevel(progressionGain.CombatantLevel); AddSkillPoints(expToAward); } else { Debug.LogError("Could not find exp definition to award skill points. ID:" + progressionGain.GainExpWithDefinition); } } else { AddSkillPoints(progressionGain.SkillPointsGained); } } if (progressionGain.GainTraitExp) { if (progressionGain.GainTraitWithDefinition) { var expDefinition = Rm_RPGHandler.Instance.Experience.AllExpDefinitions.FirstOrDefault(e => e.ID == progressionGain.GainTraitWithDefinitionID); if (expDefinition != null) { var expToAward = expDefinition.ExpForLevel(progressionGain.CombatantLevel); AddTraitExp(progressionGain.TraitID, expToAward); } else { Debug.LogError("Could not find exp definition to award trait exp. ID:" + progressionGain.GainExpWithDefinition); } } else { AddTraitExp(progressionGain.TraitID, progressionGain.TraitExpGained); } } }