Commit
- Loading branch information
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
using UnityEngine; | ||
using System.Collections; | ||
|
||
// basic WASD-style movement control | ||
// commented out line demonstrates that transform.Translate instead of charController.Move doesn't have collision detection | ||
|
||
[RequireComponent(typeof(CharacterController))] | ||
[AddComponentMenu("Control Script/FPS Input")] | ||
public class FPSInput : MonoBehaviour { | ||
public const float baseSpeed = 6.0f; | ||
|
||
public float speed = 6.0f; | ||
public float gravity = -9.8f; | ||
|
||
private CharacterController _charController; | ||
|
||
void Awake() { | ||
Messenger<float>.AddListener(GameEvent.SPEED_CHANGED, OnSpeedChanged); | ||
} | ||
void OnDestroy() { | ||
Messenger<float>.RemoveListener(GameEvent.SPEED_CHANGED, OnSpeedChanged); | ||
} | ||
|
||
void Start() { | ||
_charController = GetComponent<CharacterController>(); | ||
} | ||
|
||
void Update() { | ||
//transform.Translate(Input.GetAxis("Horizontal") * speed * Time.deltaTime, 0, Input.GetAxis("Vertical") * speed * Time.deltaTime); | ||
float deltaX = Input.GetAxis("Horizontal") * speed; | ||
float deltaZ = Input.GetAxis("Vertical") * speed; | ||
Vector3 movement = new Vector3(deltaX, 0, deltaZ); | ||
movement = Vector3.ClampMagnitude(movement, speed); | ||
|
||
movement.y = gravity; | ||
|
||
movement *= Time.deltaTime; | ||
movement = transform.TransformDirection(movement); | ||
_charController.Move(movement); | ||
} | ||
|
||
private void OnSpeedChanged(float value) { | ||
speed = baseSpeed * value; | ||
} | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
using UnityEngine; | ||
using System.Collections; | ||
|
||
public class Fireball : MonoBehaviour { | ||
public float speed = 10.0f; | ||
public int damage = 1; | ||
|
||
void Update() { | ||
transform.Translate(0, 0, speed * Time.deltaTime); | ||
} | ||
|
||
void OnTriggerEnter(Collider other) { | ||
PlayerCharacter player = other.GetComponent<PlayerCharacter>(); | ||
if (player != null) { | ||
player.Hurt(damage); | ||
} | ||
Destroy(this.gameObject); | ||
} | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
public static class GameEvent { | ||
public const string ENEMY_HIT = "ENEMY_HIT"; | ||
public const string SPEED_CHANGED = "SPEED_CHANGED"; | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.