Advertisement
Guest User

Untitled

a guest
Sep 20th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.25 KB | None | 0 0
  1. SkillLocator skillComponent = BodyCatalog.FindBodyPrefab("BanditBody").GetComponent<SkillLocator>();
  2.  
  3. SkillDef primaryDef = SkillDef.CreateInstance<SkillDef>();
  4. primaryDef.activationState = new EntityStates.SerializableEntityStateType(typeof(EntityStates.Bandit.Blast));
  5. var field = typeof(EntityStates.SerializableEntityStateType)?.GetField("_typeName", BindingFlags.NonPublic | BindingFlags.Instance);
  6. field?.SetValue(primaryDef.activationState, typeof(EntityStates.Bandit.Blast)?.AssemblyQualifiedName);
  7. primaryDef.baseRechargeInterval = 1.2f;
  8. primaryDef.baseMaxStock = 8;
  9. primaryDef.skillDescriptionToken = "Fire a powerful slug for <color=#E5C962>200% damage.</color>";
  10. primaryDef.skillDescriptionToken += " Reload every 8 shots.";
  11. primaryDef.skillName = "Blast";
  12. primaryDef.skillNameToken = "Blast";
  13. primaryDef.activationStateMachineName = skillComponent.primary.skillFamily.variants[0].skillDef.activationStateMachineName;
  14. primaryDef.isBullets = true;
  15. primaryDef.shootDelay = 0;
  16. primaryDef.beginSkillCooldownOnSkillEnd = false;
  17. primaryDef.interruptPriority = EntityStates.InterruptPriority.Any;
  18. primaryDef.isCombatSkill = true;
  19. primaryDef.noSprint = true;
  20. primaryDef.canceledFromSprinting = false;
  21. primaryDef.mustKeyPress = false;
  22. primaryDef.icon = skillComponent.primary.skillFamily.variants[0].skillDef.icon;
  23. primaryDef.requiredStock = 1;
  24. primaryDef.stockToConsume = 1;
  25.  
  26. SkillDef primaryShotgunDef = SkillDef.CreateInstance<SkillDef>();
  27. SkillDef primaryShotgunDef = SkillDef.CreateInstance<SkillDef>();
  28. primaryShotgunDef.activationState = new EntityStates.SerializableEntityStateType(typeof(EntityStates.Bandit.Shotgun));
  29. field = typeof(EntityStates.SerializableEntityStateType)?.GetField("_typeName", BindingFlags.NonPublic | BindingFlags.Instance);
  30. field?.SetValue(primaryShotgunDef.activationState, typeof(EntityStates.Bandit.Shotgun)?.AssemblyQualifiedName);
  31. primaryShotgunDef.baseRechargeInterval = 1.2f;
  32. primaryShotgunDef.baseMaxStock = 6;
  33. primaryShotgunDef.rechargeStock = 6;
  34. primaryShotgunDef.skillDescriptionToken = "Fire a shotgun blast for <color=#E5C962>6x60% damage.</color>";
  35. primaryShotgunDef.skillDescriptionToken += " Reload every 6 shots.";
  36. primaryShotgunDef.skillName = "Scatter";
  37. primaryShotgunDef.skillNameToken = "Scatter";
  38. primaryShotgunDef.activationStateMachineName = skillComponent.primary.skillFamily.variants[0].skillDef.activationStateMachineName;
  39. primaryShotgunDef.isBullets = true;
  40. primaryShotgunDef.shootDelay = 0;
  41. primaryShotgunDef.beginSkillCooldownOnSkillEnd = false;
  42. primaryShotgunDef.interruptPriority = EntityStates.InterruptPriority.Any;
  43. primaryShotgunDef.isCombatSkill = true;
  44. primaryShotgunDef.noSprint = true;
  45. primaryShotgunDef.canceledFromSprinting = false;
  46. primaryShotgunDef.mustKeyPress = false;
  47. primaryShotgunDef.icon = BodyCatalog.FindBodyPrefab("CommandoBody").GetComponent<SkillLocator>().primary.skillFamily.variants[0].skillDef.icon;
  48. primaryShotgunDef.requiredStock = 1;
  49. primaryShotgunDef.stockToConsume = 1;
  50.  
  51. SkillFamily.Variant[] primaryVariants = new SkillFamily.Variant[2];
  52. primaryVariants[0].skillDef = primaryDef;
  53. primaryVariants[0].unlockableName = "";
  54. primaryVariants[1].skillDef = primaryShotgunDef;
  55. primaryVariants[1].unlockableName = "";
  56. skillComponent.primary.skillFamily.variants = primaryVariants;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement