void Start() { rb = GetComponent <Rigidbody2D>(); dashTime = dashStartTime; playerMoveScript = gameObject.GetComponent <PlayerMovement>(); playerJumpScript = gameObject.GetComponent <DoubleJump>(); dashCount = extraDash; }
public override void StateStart() { doubleJump = GetComponent <DoubleJump>(); jumpByDirection = false; velocity = Mathf.Sqrt(2 * player.G * jumpH);//v = √2gh player.audioSource.clip = jump; player.audioSource.Play(); }
void Start() { audioManager = GameObject.Find("AudioManager").GetComponent <AudioManager>(); playerMoveScript = gameObject.GetComponent <PlayerMovement>(); playerJumpScript = gameObject.GetComponent <DoubleJump>(); player = GetComponent <Animator>(); monsterDeathAnimation = monsterDeath.GetComponent <Animator>(); monsterDeath.SetActive(false); }
void Start() { dashAbility = GetComponent <Dash>(); playerController = GetComponent <PlayerController>(); doubleJumpAbility = GetComponent <DoubleJump>(); dashAbility.enabled = false; playerController.enabled = true; }
public States(Player player) { this.player = player; falling = new Falling(player); walking = new Walking(player); dead = new Dead(player); wallgrab = new WallGrab(player); jump = new Jump(player); doublejump = new DoubleJump(player); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var o = JObject.Load(reader); var id = GetStringTokenValue(o, "id"); var x = GetIntTokenValue(o, "x") ?? 0; var y = GetIntTokenValue(o, "y") ?? 0; var width = GetIntTokenValue(o, "width") ?? 0; var height = GetIntTokenValue(o, "height") ?? 0; var rect = new Rectangle(x, y, width, height); Entity entity; switch (id) { case "key": entity = new Key(rect); break; case "double_jump": entity = new DoubleJump(rect); break; case "door": entity = new Door(rect); break; case "button": entity = new Button(rect); ((Button)entity).WallMounted = GetBoolTokenValue(o, "wallMounted", false); ((Button)entity).AttatchFace = (Face)GetIntTokenValue(o, "Face", 0); break; case "exit_door": entity = new ExitDoor(rect); break; case "note": entity = new Note(rect); ((Note)entity).Messages = GetStringListTokenValue(o, "Messages"); break; default: entity = new Entity(rect); break; } entity.Gravity = GetBoolTokenValue(o, "gravity", true); return(entity); }
void Start() { _anim = GetComponent <Animator>(); _anim.runtimeAnimatorController = Resources.Load <RuntimeAnimatorController>("AnimationController/PlayerAnimator"); //Load controller at runtime https://answers.unity.com/questions/1243273/runtimeanimatorcontroller-not-loading-from-script.html _anim.runtimeAnimatorController = animatorController; //Load controller at runtime https://answers.unity.com/questions/1243273/runtimeanimatorcontroller-not-loading-from-script.html playerAction = GetComponent <PlayerAction>(); playerControl = GetComponent <PlayerControl>(); playerJump = GetComponent <PlayerJump>(); doubleJump = GetComponent <DoubleJump>(); playerStats = GetComponent <PlayerStats>(); playerMovementV2 = GetComponent <PlayerMovementV2>(); rigidbody = GetComponent <Rigidbody>(); }
private void Start() { controller = GetComponent<CharacterController>(); anim = GetComponent<Animator>(); //slow = GetComponent<SlowDown>(); DImage.SetActive(false); moving = false; running = false; idel = true; moveChecker = false; GameObject Player = GameObject.FindGameObjectWithTag("Player"); DJ = Player.GetComponent<DoubleJump>(); //DimageChecker = false; }
void Start() { _anim = GetComponent <Animator>(); _anim.runtimeAnimatorController = runtimeAnimatorController; //Load controller at runtime https://answers.unity.com/questions/1243273/runtimeanimatorcontroller-not-loading-from-script.html playerAction = GetComponent <PlayerAction>(); playerControl = GetComponent <PlayerControl>(); playerJump = GetComponent <PlayerJump>(); doubleJump = GetComponent <DoubleJump>(); playerMovement = GetComponent <PlayerMovement>(); playerStats = GetComponent <PlayerStats>(); clipInfo = _anim.GetCurrentAnimatorClipInfo(0); // get name of current animation state https://stackoverflow.com/questions/34846287/get-name-of-current-animation-state collider = katanaObject.GetComponent <BoxCollider>(); // to find a child game object by name //https://docs.unity3d.com/ScriptReference/Transform.Find.html }
/// <summary> /// Selects and configures the ability to the player according to the inputted key /// </summary> /// <param name="key">Chosen Ability/ies</param> /// <param name="controller">Player Control</param> public static void Fetch(PlayerAbilities key, PlayerMovement controller) { //don't configure anything if player does not have any abilities if (key == PlayerAbilities.None && abilities != PlayerAbilities.None) { return; } //clear the data if it's used again abilityDict.Clear(); abilityCooldown.Clear(); abilities = key; //small sets of if statement to choose the correct ability (multi-ability is supported) //key.HasFlag detects if it contains a certain ability if (key.HasFlag(PlayerAbilities.DoubleJump)) { //ready the ability type w/ the corresponding class var tag = PlayerAbilities.DoubleJump; var obj = new DoubleJump(); //configures the ability's UnityEvent var e = ConfigureEvent(obj); //add the UnityEvent and cooldown at the dictionary abilityDict.Add(tag, e); abilityCooldown.Add(tag, obj.cooldown); } if (key.HasFlag(PlayerAbilities.Dash)) { var tag = PlayerAbilities.Dash; var obj = new Dash(); var e = ConfigureEvent(obj); abilityDict.Add(tag, e); abilityCooldown.Add(tag, obj.cooldown); controller.flipEvent += obj.OnFlip; } if (key.HasFlag(PlayerAbilities.LongJump)) { passiveAbility = new LongJump(); controller.m_JumpForce = passiveAbility.ApplyPassiveAbility( controller.m_JumpForce); } }
void Start() { _anim = GetComponent <Animator>(); // _anim.runtimeAnimatorController = Resources.Load<RuntimeAnimatorController>("AnimationController/PlayerAnimator"); //Load controller at runtime https://answers.unity.com/questions/1243273/runtimeanimatorcontroller-not-loading-from-script.html _anim.runtimeAnimatorController = animatorController; //Load controller at runtime https://answers.unity.com/questions/1243273/runtimeanimatorcontroller-not-loading-from-script.html playerAction = GetComponent <PlayerAction>(); playerControl = GetComponent <PlayerControl>(); playerJump = GetComponent <PlayerJump>(); doubleJump = GetComponent <DoubleJump>(); playerMovement = GetComponent <PlayerMovement>(); playerStats = GetComponent <PlayerStats>(); //clipInfo = _anim.GetCurrentAnimatorClipInfo(0); // get name of current animation state https://stackoverflow.com/questions/34846287/get-name-of-current-animation-state // collider = this.transform.Find("mixamorig:Hips/mixamorig:Spine/mixamorig:Spine1/mixamorig:Spine2/mixamorig:RightShoulder/mixamorig:RightArm/mixamorig:RightForeArm/mixamorig:RightHand/" + // "katana").gameObject.GetComponent<BoxCollider>(); // to find a child game object by name //https://docs.unity3d.com/ScriptReference/Transform.Find.html //collider = this.transform.Find("metarig/spine/spine.007/spine.001/spine.002/spine.003/shoulder.R/upper_arm.R/forearm.R/hand.R/" + //"katana").gameObject.GetComponent<BoxCollider>(); // to find a child game object by name //https://docs.unity3d.com/ScriptReference/Transform.Find.html }
public static void Evaluate(string pUpName) { switch (pUpName) { case "DoubleJumpPowerup": var doubleJump = new DoubleJump(); ActivePowerups.Add(doubleJump); break; case "MidairPowerup": var midair = new MidairDirectionPowerup(); ActivePowerups.Add(midair); break; default: Debug.Log("Invalid powerup name"); break; } }
public static JumpBehavior CreateJumpBehavior(JumpType type, MonoBehaviour root) { JumpBehavior toReturn = null; switch (type) { case JumpType.Null: toReturn = new NullJump(); break; case JumpType.Single: toReturn = new SingleJump(root.GetComponent <CharacterController>()) { StartFallSpeed = DEFAULT_START_FALL_SPEED, TerminalVelocity = DEFAULT_TERMINAL_VELOCITY, Gravity = DEFAULT_GRAVITY, JumpForce = DEFAULT_JUMP_FORCE }; break; case JumpType.Double: toReturn = new DoubleJump(root.GetComponent <CharacterController>()) { StartFallSpeed = DEFAULT_START_FALL_SPEED, TerminalVelocity = DEFAULT_TERMINAL_VELOCITY, Gravity = DEFAULT_GRAVITY, JumpForce = DEFAULT_JUMP_FORCE }; break; default: //Only thrown if a new jump type is added and there is no corresponding case. throw new NotImplementedException(); break; } return(null); }
public static JumpState CreateJumpState(JumpType type) { JumpState toReturn = null; switch (type) { case JumpType.Null: toReturn = new NullJump(); break; case JumpType.Single: toReturn = new SingleJump(DEFAULT_TIME_HOLD) { StartFallSpeed = DEFAULT_START_FALL_SPEED, TerminalVelocity = DEFAULT_TERMINAL_VELOCITY, Gravity = DEFAULT_GRAVITY, JumpHeight = DEFAULT_JUMP_FORCE }; break; case JumpType.Double: toReturn = new DoubleJump() { StartFallSpeed = DEFAULT_START_FALL_SPEED, TerminalVelocity = DEFAULT_TERMINAL_VELOCITY, Gravity = DEFAULT_GRAVITY, JumpHeight = DEFAULT_JUMP_FORCE }; break; default: //Only thrown if a new jump type is added and there is no corresponding case. throw new NotImplementedException(); break; } return(toReturn); }
public override void StateStart() { doubleJump = GetComponent <DoubleJump>(); velocity = 0; }
// Use this for initialization void Start() { _character = GetComponentInParent <Character>(); _doubleJump = GetComponentInParent <DoubleJump>(); }
public Level(string levelName, string previousLevel, string checkpointLevel) { Bitmap bmp = new Bitmap(string.Format("Levels/{0}.bmp", levelName)); for (int x = 0, nX = bmp.Width; x < nX; x++) { for (int y = 0, nY = bmp.Height; y < nY; y++) { var color = bmp.GetPixel(x, y); switch (color.Name) { case "ffffffff": // no object break; case "ff000000": var block = new Block(x * 10, y * 10); _bodies.Add(block); break; case "ff00ff00": var checkpoint = new Checkpoint(x * 10, y * 10, levelName == checkpointLevel); _bodies.Add(checkpoint); if (previousLevel == null) { AddPlayer(x, y, 1); Player.ResetPlayer(); } break; case "ffff0000": var spikes = new Spikes(x * 10, (y * 10) + 1); _bodies.Add(spikes); break; case "ff00a0c0": var jumper = new Jumper(x * 10, y * 10); jumper.Target = Player; _bodies.Add(jumper); break; case "ff0000ff": var enemy = new Spider(x * 10, y * 10); enemy.Target = Player; _bodies.Add(enemy); break; case "ffa6caf0": var something = new Charger(x * 10, y * 10); something.Target = Player; _bodies.Add(something); break; case "ff000040": var stomper = new Stomper((x * 10) - 20, (y * 10) - 11); stomper.Target = Player; var stomperGift = new DoorKey(0, 0); stomperGift.LockID = 4; stomperGift.Mass = 5; stomperGift.IsStatic = false; stomperGift.Drag = 0.01; stomperGift.CollisionGroup = 8055; stomper.Gift = stomperGift; _boss = stomper; _bodies.Add(stomper); break; case "ffffff00": var star = new Star(x * 10, y * 10); _bodies.Add(star); break; case "ffff00ff": var rightDoor = new RightDoor(x * 10, (y * 10) - 6, levelName, Direction.Left); if (previousLevel == (rightDoor as Door).Level) { AddPlayer(x + (int)((rightDoor as Door).Start), y, -1); } if (levelName == "0-4") { rightDoor.IsLocked = true; rightDoor.LockID = 3; rightDoor.SetTexture(); } _bodies.Add(rightDoor); break; case "ff800080": var leftDoor = new LeftDoor(x * 10, (y * 10) - 6, levelName, Direction.Right); if (previousLevel == (leftDoor as Door).Level) { AddPlayer(x + (int)((leftDoor as Door).Start), y, 1); } if (levelName == "0-0") { leftDoor.IsLocked = true; leftDoor.LockID = 4; leftDoor.IsExit = true; leftDoor.SetTexture(); } if (levelName == "2-2") { leftDoor.IsLocked = true; leftDoor.LockID = 2; leftDoor.SetTexture(); } _bodies.Add(leftDoor); break; case "ff8000c0": var downDoor = new DownDoor(x * 10, (y * 10) - 6, levelName, Direction.Left); if (previousLevel == (downDoor as Door).Level) { AddPlayer(x + (int)((downDoor as Door).Start), y, -1); } if (levelName == "2-2") { downDoor.IsLocked = true; downDoor.LockID = 1; downDoor.SetTexture(); } if (levelName == "3-2") { downDoor.IsLocked = true; downDoor.LockID = 4; downDoor.SetTexture(); } _bodies.Add(downDoor); break; case "ffe00080": var upDoor = new UpDoor(x * 10, (y * 10) - 6, levelName, Direction.Right); if (previousLevel == (upDoor as Door).Level) { AddPlayer(x + (int)((upDoor as Door).Start), y, 1); } if (levelName == "4-2") { upDoor.IsLocked = true; upDoor.LockID = 4; upDoor.SetTexture(); } _bodies.Add(upDoor); break; case "ffa0a000": var key = new DoorKey(x * 10, y * 10); switch (levelName) { case "1-1": key.LockID = 2; break; case "2-0": key.LockID = 1; break; case "1-3": key.LockID = 3; break; } _bodies.Add(key); break; case "ffe0c000": if (_player != null && _player.Inventory.HasFlag(InventoryItem.DoubleJump)) { break; } var doubleJump = new DoubleJump(x * 10, y * 10); _bodies.Add(doubleJump); break; case "ffc0a000": if (_player != null && _player.Inventory.HasFlag(InventoryItem.Run)) { break; } var run = new Run(x * 10, y * 10); _bodies.Add(run); break; case "ffc0e000": if (_player != null && _player.Inventory.HasFlag(InventoryItem.Weapon)) { break; } var basicWeapon = new BasicWeapon(x * 10, y * 10); _bodies.Add(basicWeapon); break; case "ffa0c000": if (_player != null && _player.Inventory.HasFlag(InventoryItem.WeaponPower)) { break; } var strongWeapon = new StrongWeapon(x * 10, y * 10); _bodies.Add(strongWeapon); break; case "ffe0e040": if (_player != null && _player.Inventory.HasFlag(InventoryItem.WeaponSpeed)) { break; } var fastWeapon = new FastWeapon(x * 10, y * 10); _bodies.Add(fastWeapon); break; case "ff608000": if (_player != null && _player.Inventory.HasFlag(InventoryItem.WeaponLength)) { break; } var longWeapon = new LongWeapon(x * 10, y * 10); _bodies.Add(longWeapon); break; case "ffc0c0c0": var botBoundry = new BotBoundry(x * 10, y * 10); _bodies.Add(botBoundry); break; case "ff808080": var breakable = new Breakable(x * 10, y * 10); _bodies.Add(breakable); break; case "ffa0a0a4": var bossBoundry = new BossBoundry(x * 10, y * 10); _bodies.Add(bossBoundry); break; default: break; } } } _bodies = _bodies.OrderBy(b => b.DrawOrder).ToList(); }
public override void StateStart() { doubleJump = GetComponent <DoubleJump>(); velocity = Mathf.Sqrt(2 * player.G * jumpH);//v = √2gh player.animator.Play("Jump", -1, 0); }