diff --git a/Scenes/main.tscn b/Scenes/main.tscn index 07c247c..0a5d444 100644 --- a/Scenes/main.tscn +++ b/Scenes/main.tscn @@ -193,8 +193,6 @@ spot_angle = 42.0126 [node name="revolver" parent="." instance=ExtResource("4_jjvhh")] transform = Transform3D(-4.37114e-09, -0.1, 0, 0.1, -4.37114e-09, 0, 0, 0, 0.1, 1.02871, 3.34454, 0.425178) -down_pos = Vector3(1.029, 3.345, 0.425) -target_angle_up = Vector3(0, 0, -180) is_player_revolver = true [node name="BulletStack" type="Node3D" parent="."] @@ -245,10 +243,6 @@ transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, 0.0599 [node name="enemy_revolver" parent="." instance=ExtResource("4_jjvhh")] transform = Transform3D(0.00193719, -0.0999812, 1.50996e-08, -0.0999812, -0.00193719, -8.74064e-09, 9.0315e-09, -1.49274e-08, -0.1, 1.01994, 3.38413, -0.496572) -up_pos = Vector3(0.354, 4.248, -0.497) -down_pos = Vector3(1.02, 3.384, -0.497) -target_angle_up = Vector3(0, -180, 180) -target_angle_down = Vector3(0, 180, -90) [node name="MainGame" parent="." instance=ExtResource("6_21xkr")] diff --git a/Scripts/game_manager.gd b/Scripts/game_manager.gd index 18e7c81..bfcc305 100644 --- a/Scripts/game_manager.gd +++ b/Scripts/game_manager.gd @@ -18,9 +18,12 @@ var is_player2_loaded: bool = false var bullet_stack: Node3D var animPl: AnimationPlayer + +var last_turn: int func _ready() -> void: bullet_shoot.connect(on_bullet_shoot) bullet_selected.connect(on_bullet_selected) + func _input(event: InputEvent) -> void: if event.is_action_released("load"): @@ -66,23 +69,22 @@ func check_loaded_bullets(revolver: Node3D): return false func end_player_turn(): - if !is_player2_loaded: - set_state(GameState.PLAYER2_GUN_LOAD) + animPl.play("player_revolver_down") - end_turn() + #end_turn() func end_enemy_turn(): - if is_player1_loaded == false: - print("Player Turn") - set_player_turn() - end_turn() + animPl.play("enemey_rev_down") + #set_player_turn() + #end_turn() func end_turn(): - if check_unloaded_bullets(): - if is_player1_loaded and is_player2_loaded: - print("Phase 2") - get_phase2_player_start() + if !player1_revolver.can_be_loaded() and !player2_revolver.can_be_loaded(): + print("Phase 2") else: - set_state(GameState.PLAYER2_UNLOAD) + if last_turn == 0: + set_enemy_turn() + else: + set_player_turn() func get_enemy_revolver() -> Node3D: return player2_revolver @@ -101,8 +103,17 @@ func on_bullet_shoot(target): func set_player_turn(): animPl.play("player_revolver_up") + +func set_enemy_turn(): + animPl.play("enemey_rev_up") func on_animation_finished(anim_name): if anim_name == "player_revolver_up": set_state(GameState.PLAYER1_GUN_LOAD) elif anim_name == "player_revolver_down": + last_turn = 0 + end_turn() + elif anim_name == "enemey_rev_up": set_state(GameState.PLAYER2_GUN_LOAD) + elif anim_name == "enemey_rev_down": + last_turn = 1 + end_turn() diff --git a/Scripts/revolver.gd b/Scripts/revolver.gd index 253cb00..ab2b288 100644 --- a/Scripts/revolver.gd +++ b/Scripts/revolver.gd @@ -4,16 +4,12 @@ enum revolver_state {UP, DOWN, LOADING} var state: int = revolver_state.DOWN var game_state: int var bullet_target_pos = Vector3(1.95,0.03,4.612) #2.231 -@export var up_pos: Vector3 = Vector3(0.354,4.248,0.425) -@export var down_pos: Vector3 var loaded_bullets = Array() var max_bullets: int = 6 var current_round: int = 0 var timer: Timer var target_angle: Vector3 = Vector3(0,0,90) -@export var target_angle_up: Vector3 = Vector3(0,0,90) -@export var target_angle_down: Vector3 = Vector3(0,0,90) @export var is_player_revolver: bool = false @export var cylinder: Node3D