public DanceMajor() { health = 16; maxHP = 16; strength = 2; power = 0; charge = 0; defense = 0; guard = 0; baseAccuracy = 14; accuracy = 14; dexterity = 5; evasion = 0; type = "Dance Major"; passive = new Footwork(this); quirk = Quirk.GetQuirk(this); special = new Tumble(); special2 = new Lunge(); player = false; champion = false; recruitable = true; CreateDrops(); attackEffect = "gain 3 evasion"; }
float Lunge() { GameObject lunge = Instantiate(lungePrefab, transform, false) as GameObject; Lunge lun = lunge.GetComponent <Lunge> (); lun.Init(gameObject); return(lun.cooldown); }
public void Update() { float delta = Time.deltaTime * speed; transform.Translate(dir * delta); RaycastHit hit; if (Physics.Raycast(transform.position, -dir, out hit, delta) && hit.transform.name != friendly) { Destroy(gameObject); AIControl ai = hit.transform.GetComponent <AIControl>(); Module telporter = hit.transform.GetComponent <Module>(); if (telporter != null) { telporter.TryCancelTeleport(); return; } if (ai != null && ai.hp == 0 && !ai.dead) { ai.dead = true; ai.HandleDeath(); return; } if (ai != null && ai.hp > 0) { ai.hp--; Pusher pusher = ai.transform.GetComponent <Pusher>(); Lunge lunge = ai.transform.GetComponent <Lunge>(); if (!lunge.enabled && !pusher.enabled) { pusher.pushDir = dir; pusher.enabled = true; } Instantiate(gore, hit.point, Quaternion.identity); } } }
public static PlayerClass FighterClass() { var fighter = new PlayerClass { Name = "Fighter", IsBaseClass = true, ExperienceModifier = 500, HelpText = new Help(), Skills = new List <Skill>(), ReclassOptions = new List <PlayerClass>(), MaxHpGain = 15, MinHpGain = 10, MaxManaGain = 8, MinManaGain = 4, MaxEnduranceGain = 15, MinEnduranceGain = 11, StatBonusStr = 1, StatBonusCon = 1, }; /* TODO: some skills to add * Axe Dagger Polearm Mace * Spear Shield Block * staff sword * bash Whip Enhanced damage * parry rescue swim scrolls * staves wands recall * age dig * dirt kicking * second atttack * third attack * fouth attack * fast healing * kick * disarm * blind fighting * trip * berserk * dual wield (eek) * */ #region Lvl 1 skills var longBlades = LongBlades.LongBladesAb(); longBlades.Learned = true; fighter.Skills.Add(longBlades); var shortBlades = ShortBlades.ShortBladesAb(); shortBlades.Learned = true; fighter.Skills.Add(shortBlades); var axe = Axe.AxeAb(); axe.Learned = true; fighter.Skills.Add(axe); var blunt = BluntWeapons.BluntWeaponsAb(); blunt.Learned = true; fighter.Skills.Add(blunt); var polearm = Polearms.PolearmsAb(); polearm.Learned = true; fighter.Skills.Add(polearm); var exotic = Exotic.ExoticAb(); exotic.Learned = true; fighter.Skills.Add(exotic); var staff = Staff.StaffAb(); staff.Learned = true; fighter.Skills.Add(staff); var handToHand = HandToHand.HandToHandAb(); handToHand.Learned = true; fighter.Skills.Add(handToHand); var lightArmour = LightArmour.LightArmourAb(); lightArmour.Learned = true; fighter.Skills.Add(lightArmour); #endregion #region Lvl 2 skills fighter.Skills.Add(HeavyArmour.HeavyArmourAb()); fighter.Skills.Add(MediumArmour.MediumArmourAb()); #endregion #region Lvl 3 skills fighter.Skills.Add(Trip.TripAb()); #endregion #region Lvl 4 fighter.Skills.Add(FastHealing.FastHealingAb()); fighter.Skills.Add(Toughness.ToughnessAb()); #endregion #region Lvl 5 var parry = Parry.ParryAb(); fighter.Skills.Add(parry); #endregion #region Lvl 6 var shieldBlock = ShieldBlock.ShieldBlockAb(); fighter.Skills.Add(shieldBlock); var dodge = Dodge.DodgeAb(); fighter.Skills.Add(dodge); #endregion #region Lvl 7 var dirtKick = DirtKick.DirtKickAb(); fighter.Skills.Add(dirtKick); var kick = Kick.KickAb(); fighter.Skills.Add(kick); #endregion #region Lvl 9 var bash = Bash.BashAb(); fighter.Skills.Add(bash); #endregion #region Lvl 10 var rescue = Rescue.RescueAb(); fighter.Skills.Add(rescue); #endregion #region Lvl 11 var sneak = Sneak.SneakAb(); fighter.Skills.Add(sneak); #endregion #region Lvl 12 fighter.Skills.Add(SecondAttack.SecondAttackAb()); #endregion #region Lvl 13 var lunge = Lunge.LungeAb(); fighter.Skills.Add(lunge); #endregion #region Lvl 14 var sbash = ShieldBash.ShieldBashAb(); fighter.Skills.Add(sbash); #endregion #region Lvl 15 var disarm = Disarm.DisarmAb(); fighter.Skills.Add(disarm); #endregion #region Lvl 16 var enhancedDam = EnhancedDamage.EnhancedDamageAb(); fighter.Skills.Add(enhancedDam); #endregion #region Lvl 18 var mount = Mount.MountAb(); fighter.Skills.Add(mount); #endregion #region Lvl 20 var thirdAttk = ThirdAttack.ThirdAttackAb(); fighter.Skills.Add(thirdAttk); #endregion fighter.ReclassOptions.Add(Ranger.RangerClass()); return(fighter); }
public override void OnEnter() { base.OnEnter(); base.characterBody.isSprinting = true; if (base.cameraTargetParams) { base.cameraTargetParams.aimMode = CameraTargetParams.AimType.Standard; } base.characterBody.hideCrosshair = false; EntityStateMachine desiredStateMachine = this.outer; foreach (EntityStateMachine i in base.gameObject.GetComponents <EntityStateMachine>()) { if (i) { if (i.customName == "Weapon") { desiredStateMachine = i; } } } if (!this.tracker.GetTrackingTarget()) { if (this.isGrounded) { Uppercut nextState = new Uppercut { charge = this.charge }; desiredStateMachine.SetNextState(nextState); this.outer.SetNextStateToMain(); return; } else { Downslash nextState = new Downslash { charge = this.charge }; desiredStateMachine.SetNextState(nextState); this.outer.SetNextStateToMain(); return; } } float desiredDist = 10f; if (!this.isGrounded) { desiredDist = 7f; } float dist = Vector3.Distance(base.transform.position, this.tracker.GetTrackingTarget().transform.position); if (dist <= desiredDist) { if (this.isGrounded) { Uppercut nextState = new Uppercut { charge = this.charge }; desiredStateMachine.SetNextState(nextState); this.outer.SetNextStateToMain(); return; } else { Downslash nextState = new Downslash { charge = this.charge }; desiredStateMachine.SetNextState(nextState); this.outer.SetNextStateToMain(); return; } } else { Lunge nextState = new Lunge { charge = this.charge }; desiredStateMachine.SetNextState(nextState); this.outer.SetNextStateToMain(); return; } }