Skip to content

Commit 60f515e

Browse files
authored
Merge pull request #399 from aaronfranke/rpg
Update 2D role playing game
2 parents 375d5d1 + 9218f88 commit 60f515e

File tree

32 files changed

+131
-70
lines changed

32 files changed

+131
-70
lines changed

2d/role_playing_game/Game.gd

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
extends Node
22

3-
export (NodePath) var combat_screen
4-
export (NodePath) var exploration_screen
3+
export(NodePath) var combat_screen
4+
export(NodePath) var exploration_screen
55

66
const PLAYER_WIN = "res://dialogue/dialogue_data/player_won.json"
77
const PLAYER_LOSE = "res://dialogue/dialogue_data/player_lose.json"
@@ -19,12 +19,6 @@ func _ready():
1919
"_on_opponent_dialogue_finished", [n])
2020
remove_child(combat_screen)
2121

22-
func _on_opponent_dialogue_finished(opponent):
23-
if opponent.lost:
24-
return
25-
var player = $Exploration/Grid/Player
26-
var combatents = [player.combat_actor, opponent.combat_actor]
27-
start_combat(combatents)
2822

2923
func start_combat(combat_actors):
3024
remove_child($Exploration)
@@ -35,6 +29,15 @@ func start_combat(combat_actors):
3529
combat_screen.initialize(combat_actors)
3630
$AnimationPlayer.play_backwards("fade")
3731

32+
33+
func _on_opponent_dialogue_finished(opponent):
34+
if opponent.lost:
35+
return
36+
var player = $Exploration/Grid/Player
37+
var combatents = [player.combat_actor, opponent.combat_actor]
38+
start_combat(combatents)
39+
40+
3841
func _on_combat_finished(winner, _loser):
3942
remove_child(combat_screen)
4043
$AnimationPlayer.play_backwards("fade")

2d/role_playing_game/Game.tscn

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
[gd_scene load_steps=5 format=2]
22

33
[ext_resource path="res://Game.gd" type="Script" id=1]
4-
[ext_resource path="res://screens/exploration/Exploration.tscn" type="PackedScene" id=2]
5-
[ext_resource path="res://screens/combat/Combat.tscn" type="PackedScene" id=3]
4+
[ext_resource path="res://screens/combat/Combat.tscn" type="PackedScene" id=2]
5+
[ext_resource path="res://screens/exploration/Exploration.tscn" type="PackedScene" id=3]
66

77
[sub_resource type="Animation" id=1]
88
length = 0.5
@@ -38,10 +38,10 @@ __meta__ = {
3838
"_edit_use_anchors_": false
3939
}
4040

41-
[node name="Combat" parent="." instance=ExtResource( 3 )]
41+
[node name="Combat" parent="." instance=ExtResource( 2 )]
4242
visible = false
4343

44-
[node name="Exploration" parent="." instance=ExtResource( 2 )]
44+
[node name="Exploration" parent="." instance=ExtResource( 3 )]
4545

4646
[node name="Camera2D" type="Camera2D" parent="."]
4747
offset = Vector2( 640, 360 )

2d/role_playing_game/dialogue/dialogue_player/DialoguePlayer.gd

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
extends Node
22

3-
export (String, FILE, "*.json") var dialogue_file
3+
export(String, FILE, "*.json") var dialogue_file
44
var dialogue_keys = []
55
var dialogue_name = ""
66
var current = 0
@@ -15,21 +15,24 @@ func start_dialogue():
1515
index_dialogue()
1616
dialogue_text = dialogue_keys[current].text
1717
dialogue_name = dialogue_keys[current].name
18-
18+
19+
1920
func next_dialogue():
2021
current += 1
2122
if current == dialogue_keys.size():
2223
emit_signal("dialogue_finished")
2324
return
2425
dialogue_text = dialogue_keys[current].text
2526
dialogue_name = dialogue_keys[current].name
26-
27+
28+
2729
func index_dialogue():
2830
var dialogue = load_dialogue(dialogue_file)
2931
dialogue_keys.clear()
3032
for key in dialogue:
3133
dialogue_keys.append(dialogue[key])
32-
34+
35+
3336
func load_dialogue(file_path):
3437
var file = File.new()
3538
if file.file_exists(file_path):

2d/role_playing_game/dialogue/dialogue_player/DialoguePlayer.tscn

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,3 @@
44

55
[node name="DialoguePlayer" type="Node"]
66
script = ExtResource( 1 )
7-

2d/role_playing_game/dialogue/interface/Interface.gd

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
extends Control
22

33
var dialogue_node = null
4+
45
func _ready():
56
hide()
67

8+
79
func show_dialogue(player, dialogue):
810
show()
911
$Button.grab_focus()
@@ -21,12 +23,13 @@ func show_dialogue(player, dialogue):
2123
$Name.text = dialogue_node.dialogue_name
2224
$Text.text = dialogue_node.dialogue_text
2325

24-
26+
2527
func _on_Button_button_up():
2628
dialogue_node.next_dialogue()
2729
$Name.text = dialogue_node.dialogue_name
2830
$Text.text = dialogue_node.dialogue_text
2931

32+
3033
func _on_dialogue_finished(player):
3134
dialogue_node.disconnect("dialogue_started", player, "set_active")
3235
dialogue_node.disconnect("dialogue_finished", player, "set_active")

2d/role_playing_game/dialogue/interface/Interface.tscn

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,5 +31,4 @@ margin_top = 32.0
3131
margin_right = 1264.0
3232
margin_bottom = 151.0
3333
text = "Next"
34-
3534
[connection signal="button_up" from="Button" to="." method="_on_Button_button_up"]

2d/role_playing_game/grid_movement/grid/Grid.gd

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,3 @@ func request_move(pawn, direction):
3333
if not target_pawn.has_node("DialoguePlayer"):
3434
return
3535
get_node(dialogue_ui).show_dialogue(pawn, target_pawn.get_node("DialoguePlayer"))
36-

2d/role_playing_game/grid_movement/pawns/Actor.gd

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ onready var Grid = get_parent()
44
var lost = false
55

66
func _ready():
7-
update_look_direction(Vector2(1, 0))
7+
update_look_direction(Vector2.RIGHT)
8+
89

910
func _process(delta):
1011
var input_direction = get_input_direction()
@@ -19,15 +20,18 @@ func _process(delta):
1920
else:
2021
bump()
2122

23+
2224
func get_input_direction():
2325
return Vector2(
24-
int(Input.is_action_pressed("ui_right")) - int(Input.is_action_pressed("ui_left")),
25-
int(Input.is_action_pressed("ui_down")) - int(Input.is_action_pressed("ui_up"))
26+
Input.get_action_strength("ui_right") - Input.get_action_strength("ui_left"),
27+
Input.get_action_strength("ui_down") - Input.get_action_strength("ui_up")
2628
)
2729

30+
2831
func update_look_direction(direction):
2932
$Pivot/Sprite.rotation = direction.angle()
3033

34+
3135
func move_to(target_position):
3236
set_process(false)
3337
$AnimationPlayer.play("walk")
@@ -40,5 +44,6 @@ func move_to(target_position):
4044

4145
set_process(true)
4246

47+
4348
func bump():
4449
$AnimationPlayer.play("bump")

2d/role_playing_game/grid_movement/pawns/Character.gd

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
extends 'Pawn.gd'
22

3+
#warning-ignore:unused_class_variable
34
export (PackedScene) var combat_actor
5+
#warning-ignore:unused_class_variable
46
var lost = false
57

68
func _ready():

2d/role_playing_game/grid_movement/pawns/Character.tscn

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,6 @@ script = ExtResource( 1 )
6868
__meta__ = {
6969
"_edit_group_": true
7070
}
71-
_sections_unfolded = [ "Offset", "Transform", "Z Index" ]
72-
type = 0
73-
combat_actor = null
7471

7572
[node name="AnimationPlayer" type="AnimationPlayer" parent="."]
7673
anims/bump = SubResource( 1 )
@@ -84,4 +81,3 @@ anims/walk = SubResource( 2 )
8481
texture = ExtResource( 2 )
8582
centered = false
8683
offset = Vector2( -32, -32 )
87-

0 commit comments

Comments
 (0)