44 lines
1.0 KiB
C#
44 lines
1.0 KiB
C#
using System;
|
|
using Hazel;
|
|
|
|
namespace Sandbox {
|
|
|
|
public class Player : Entity
|
|
{
|
|
private TransformComponent m_Transform;
|
|
private RigidBody2DComponent m_Rigidbody;
|
|
|
|
public float Force;
|
|
public float Time;
|
|
|
|
void OnCreate()
|
|
{
|
|
Console.WriteLine($"Player.OnCreate - {ID}");
|
|
|
|
m_Transform = GetComponent<TransformComponent>();
|
|
m_Rigidbody = GetComponent<RigidBody2DComponent>();
|
|
}
|
|
|
|
void OnUpdate(float ts)
|
|
{
|
|
Time += ts;
|
|
|
|
float speed = Force;
|
|
Vector3 velocity = Vector3.Zero;
|
|
|
|
if(Input.IsKeyDown(KeyCode.W))
|
|
velocity.Y = 1.0f;
|
|
else if(Input.IsKeyDown(KeyCode.S))
|
|
velocity.Y = -1.0f;
|
|
|
|
if(Input.IsKeyDown(KeyCode.A))
|
|
velocity.X = -1.0f;
|
|
else if(Input.IsKeyDown(KeyCode.D))
|
|
velocity.X = 1.0f;
|
|
|
|
m_Rigidbody.ApplyLinearImpulseToCenter(velocity.XY * speed, true);
|
|
}
|
|
}
|
|
|
|
|
|
} |