public void Init(MonsterVariantInfo variantInfo) { this.overrideName = variantInfo.overrideName; this.spawnRate = variantInfo.spawnRate; this.unique = variantInfo.unique; this.tier = variantInfo.variantTier; this.aiModifier = variantInfo.aiModifier; this.customInventory = variantInfo.customInventory; this.healthModifier = variantInfo.healthMultiplier; this.moveSpeedModifier = variantInfo.moveSpeedMultiplier; this.attackSpeedModifier = variantInfo.attackSpeedMultiplier; this.damageModifier = variantInfo.damageMultiplier; this.armorModifier = variantInfo.armorMultiplier; this.armorBonus = variantInfo.armorBonus; this.meshReplacements = variantInfo.meshReplacement; this.materialReplacements = variantInfo.materialReplacement; this.skillReplacements = variantInfo.skillReplacement; this.sizeModifier = variantInfo.sizeModifier; this.buff = variantInfo.buff; }
internal static void AddSimpleVariant(string bodyName, float spawnRate, MonsterVariantTier tier, MonsterSizeModifier size, float health, float moveSpeed, float attackSpeed, float damage, float armor, float armorBonus, int alienHeads, Material replacementMaterial, Mesh replacementMesh) { MonsterMaterialReplacement[] replacementMats = null; if (replacementMaterial != null) { replacementMats = SimpleMaterialReplacement(replacementMaterial); } MonsterVariantInfo newInfo = new MonsterVariantInfo { bodyName = bodyName, spawnRate = spawnRate, variantTier = tier, sizeModifier = size, healthMultiplier = health, moveSpeedMultiplier = moveSpeed, attackSpeedMultiplier = attackSpeed, damageMultiplier = damage, armorMultiplier = armor, armorBonus = armorBonus, customInventory = SimpleInventory("AlienHead", alienHeads), meshReplacement = null, materialReplacement = replacementMats, skillReplacement = null, buff = BuffIndex.None }; Components.VariantHandler variantHandler = Resources.Load <GameObject>("Prefabs/CharacterBodies/" + bodyName + "Body").AddComponent <Components.VariantHandler>(); variantHandler.Init(newInfo); }
public static void AddSimpleVariant(string bodyName, float spawnRate, MonsterVariantTier tier, MonsterSizeModifier size, float health, float moveSpeed, float attackSpeed, float damage, float armor, float armorBonus, int alienHeads, Mesh replacementMesh) { AddSimpleVariant(bodyName, spawnRate, tier, size, health, moveSpeed, attackSpeed, damage, armor, armorBonus, alienHeads, null, replacementMesh); }
// helpers for adding simple variants public static void AddSimpleVariant(string bodyName, float spawnRate, MonsterVariantTier tier, MonsterSizeModifier size, float health, float moveSpeed, float attackSpeed, float damage, float armor, float armorBonus) { AddSimpleVariant(bodyName, spawnRate, tier, size, health, moveSpeed, attackSpeed, damage, armor, armorBonus, 0, null, null); }