Initial commit

This commit is contained in:
Crizomb 2024-11-14 13:58:15 +01:00
commit 1514fe991b
675 changed files with 6030 additions and 0 deletions

59
scripts/character.gd Normal file
View file

@ -0,0 +1,59 @@
extends Area2D
class_name Character
signal has_moved(direction : Globals.Direction)
@onready var RayCastRight : RayCast2D = $RayCastRight;
@onready var RayCastDown : RayCast2D = $RayCastDown;
@onready var RayCastUp : RayCast2D = $RayCastUp;
@onready var RayCastLeft : RayCast2D = $RayCastLeft;
var TileSize : int = 16;
func move(direction: Globals.Direction) -> bool:
var should_emit := false;
match direction:
Globals.Direction.RIGHT:
var collider : Object = RayCastRight.get_collider()
if !collider or (collider.is_in_group("box") and collider.go_right()):
position.x += TileSize
should_emit = true;
Globals.Direction.LEFT:
var collider : Object = RayCastLeft.get_collider()
if !collider or (collider.is_in_group("box") and collider.go_left()):
position.x -= TileSize
should_emit = true;
Globals.Direction.UP:
var collider : Object = RayCastUp.get_collider()
if !collider or (collider.is_in_group("box") and collider.go_up()):
position.y -= TileSize
should_emit = true;
Globals.Direction.DOWN:
var collider : Object = RayCastDown.get_collider()
if !collider or (collider.is_in_group("box") and collider.go_down()):
position.y += TileSize
should_emit = true;
Globals.Direction.NONE:
pass
_:
print("WTTFF");
print(direction);
if should_emit:
emit_signal("has_moved", direction);
return should_emit;