Added a book scene that triggers dialogic events. Also added the end game dialogic
This commit is contained in:
parent
5d290b4b9b
commit
571a7b0676
BIN
assets/book/book.glb
Normal file
BIN
assets/book/book.glb
Normal file
Binary file not shown.
1065
assets/book/book.glb.import
Normal file
1065
assets/book/book.glb.import
Normal file
File diff suppressed because it is too large
Load Diff
36
assets/book/book.tscn
Normal file
36
assets/book/book.tscn
Normal file
File diff suppressed because one or more lines are too long
BIN
assets/book/lambert1.material
Normal file
BIN
assets/book/lambert1.material
Normal file
Binary file not shown.
21
dialogic/characters/character-1661104209.json
Normal file
21
dialogic/characters/character-1661104209.json
Normal file
@ -0,0 +1,21 @@
|
||||
{
|
||||
"color": "#ffffffff",
|
||||
"description": "",
|
||||
"display_name": "",
|
||||
"display_name_bool": false,
|
||||
"id": "character-1661104209.json",
|
||||
"mirror_portraits": false,
|
||||
"name": "Earth",
|
||||
"nickname": "",
|
||||
"nickname_bool": false,
|
||||
"offset_x": 0,
|
||||
"offset_y": 0,
|
||||
"portraits": [
|
||||
{
|
||||
"name": "Default",
|
||||
"path": ""
|
||||
}
|
||||
],
|
||||
"scale": 100,
|
||||
"theme": ""
|
||||
}
|
@ -6,7 +6,8 @@
|
||||
"Characters": {
|
||||
"files": [
|
||||
"character-1660444172.json",
|
||||
"character-1661095243.json"
|
||||
"character-1661095243.json",
|
||||
"character-1661104209.json"
|
||||
],
|
||||
"folders": {
|
||||
|
||||
@ -54,7 +55,8 @@
|
||||
"timeline-1661099959.json",
|
||||
"timeline-1661099970.json",
|
||||
"timeline-1661099979.json",
|
||||
"timeline-1661100462.json"
|
||||
"timeline-1661100462.json",
|
||||
"timeline-1661104130.json"
|
||||
],
|
||||
"folders": {
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
"character": "",
|
||||
"event_id": "dialogic_001",
|
||||
"portrait": "",
|
||||
"text": " Raw yams are inedible. Cook them on the oven. Don't forget to bring a charge."
|
||||
"text": " Raw yams are inedible. Cook them in the oven. Don't forget to bring a charge."
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
|
33
dialogic/timelines/timeline-1661104130.json
Normal file
33
dialogic/timelines/timeline-1661104130.json
Normal file
@ -0,0 +1,33 @@
|
||||
{
|
||||
"events": [
|
||||
{
|
||||
"character": "character-1661095243.json",
|
||||
"event_id": "dialogic_001",
|
||||
"portrait": "",
|
||||
"text": "Transmission outbound..."
|
||||
},
|
||||
{
|
||||
"character": "character-1661104209.json",
|
||||
"event_id": "dialogic_001",
|
||||
"portrait": "",
|
||||
"text": "Reading you loud and clear Dungee. We thought you had perished. Glad to see you are alive.\nThanks to your transmission data, we have successfully averted the crisis."
|
||||
},
|
||||
{
|
||||
"character": "character-1660444172.json",
|
||||
"event_id": "dialogic_001",
|
||||
"portrait": "",
|
||||
"text": "*phew* We did it!!"
|
||||
},
|
||||
{
|
||||
"character": "",
|
||||
"event_id": "dialogic_001",
|
||||
"portrait": "",
|
||||
"text": "You have saved Earth! Thank for playing!"
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"dialogic-version": "1.4.4",
|
||||
"file": "timeline-1661104130.json",
|
||||
"name": "win"
|
||||
}
|
||||
}
|
@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=30 format=2]
|
||||
[gd_scene load_steps=31 format=2]
|
||||
|
||||
[ext_resource path="res://assets/level/Level.tscn" type="PackedScene" id=1]
|
||||
[ext_resource path="res://scripts/cameras.gd" type="Script" id=2]
|
||||
@ -22,6 +22,7 @@
|
||||
[ext_resource path="res://recipes/all_recipes.tres" type="Resource" id=20]
|
||||
[ext_resource path="res://scenes/rover_station.tscn" type="PackedScene" id=21]
|
||||
[ext_resource path="res://item_types/geode.tres" type="Resource" id=22]
|
||||
[ext_resource path="res://assets/book/book.tscn" type="PackedScene" id=23]
|
||||
|
||||
[sub_resource type="CylinderShape" id=1]
|
||||
height = 5.22615
|
||||
@ -283,6 +284,10 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3.5684, 1.79682, -10.1376 )
|
||||
omni_range = 2.39
|
||||
omni_attenuation = 2.54912
|
||||
|
||||
[node name="book" parent="Ore_Conveyor_Room" instance=ExtResource( 23 )]
|
||||
transform = Transform( 1.4199, 0, 0.0299914, 0, 1.42021, 0, -0.0299914, 0, 1.4199, 1.86507, 0.752124, -8.4573 )
|
||||
dialogic_timeline = "excavator"
|
||||
|
||||
[node name="Storage_Room" type="Spatial" parent="."]
|
||||
transform = Transform( 0.0379867, 0, -0.999278, 0, 1, 0, 0.999278, 0, 0.0379867, 8.64656, 0, 0.323352 )
|
||||
|
||||
@ -336,8 +341,9 @@ visible = false
|
||||
modulate = Color( 0, 0, 0, 1 )
|
||||
text = "TRANSFORMATRON"
|
||||
|
||||
[node name="item_holder" parent="Crafting_Room" instance=ExtResource( 17 )]
|
||||
transform = Transform( 0.0379863, 0, 0.999279, 0, 1, 0, -0.999279, 0, 0.0379863, 4.67479, 0.817799, -9.1295 )
|
||||
[node name="book" parent="Crafting_Room" instance=ExtResource( 23 )]
|
||||
transform = Transform( 1.4199, 0, 0.0299914, 0, 1.42021, 0, -0.0299914, 0, 1.4199, 4.57856, 0.927344, -9.08136 )
|
||||
dialogic_timeline = "crafting"
|
||||
|
||||
[node name="item_holder5" parent="Crafting_Room" instance=ExtResource( 17 )]
|
||||
transform = Transform( 0.0379864, 0, 0.999278, 0, 1, 0, -0.999278, 0, 0.0379864, -5.01753, 1.20905, -9.643 )
|
||||
@ -372,6 +378,10 @@ transform = Transform( 1, 0, -1.11759e-08, 0, 1, 0, 1.11759e-08, 0, 1, 1.77669,
|
||||
transform = Transform( 1.00001, 0, 3.72529e-09, 0, 1, 0, -3.72529e-09, 0, 1.00001, -2.828, 0, -10.6561 )
|
||||
start_broken = true
|
||||
|
||||
[node name="book" parent="Galley_Room" instance=ExtResource( 23 )]
|
||||
transform = Transform( 0.946047, 0, 1.05925, 0, 1.42021, 0, -1.05925, 0, 0.946047, 2.93422, 0.851342, -9.87229 )
|
||||
dialogic_timeline = "oven"
|
||||
|
||||
[node name="Hydroponics_Room" type="Spatial" parent="."]
|
||||
transform = Transform( 0.690862, 0.000404371, 0.722986, -0.000832856, 1, 0.000236545, -0.722985, -0.000765563, 0.690862, -6.25959, -7.15916e-05, -5.86512 )
|
||||
|
||||
@ -397,6 +407,10 @@ grow_time = 30.0
|
||||
transform = Transform( 0.502127, 3.7835e-10, 0.487718, 5.82077e-11, 0.700001, -2.37378e-10, -0.487718, 3.7835e-10, 0.502128, 3.28563, 0.006777, -7.36006 )
|
||||
grow_time = 30.0
|
||||
|
||||
[node name="book" parent="Hydroponics_Room" instance=ExtResource( 23 )]
|
||||
transform = Transform( 1.42022, 6.98492e-10, -1.78814e-07, 4.07454e-10, 1.42021, -6.40284e-10, 5.96046e-08, -5.82077e-11, 1.42022, 3.26371, 0.851342, -5.21663 )
|
||||
dialogic_timeline = "hydroponics"
|
||||
|
||||
[node name="Communications" type="Spatial" parent="."]
|
||||
transform = Transform( -0.0426527, 0.000404372, 0.999089, -0.000747618, 1, -0.000436656, -0.999089, -0.000765564, -0.0426524, -8.66408, 0.00565405, 0.343818 )
|
||||
|
||||
@ -409,12 +423,20 @@ text = "Communications"
|
||||
[node name="comm_station" parent="Communications" instance=ExtResource( 13 )]
|
||||
transform = Transform( 1, 6.98492e-10, -8.19564e-08, -1.45519e-09, 1, 5.78439e-10, 8.19564e-08, 5.16593e-10, 1, 4.95462, -1.62981e-09, -9.93224 )
|
||||
|
||||
[node name="book" parent="Communications" instance=ExtResource( 23 )]
|
||||
transform = Transform( 1.42022, 9.31323e-10, -1.8999e-07, 4.65661e-10, 1.42021, -5.42059e-10, 5.96046e-08, 4.00178e-11, 1.42022, 3.78351, 0.851342, -4.80938 )
|
||||
dialogic_timeline = "comms"
|
||||
|
||||
[node name="Rover_Room" type="Spatial" parent="."]
|
||||
transform = Transform( -0.707107, 0, 0.707107, 0, 1, 0, -0.707107, 0, -0.707107, -11, 0, 11 )
|
||||
|
||||
[node name="rover_station" parent="Rover_Room" instance=ExtResource( 21 )]
|
||||
start_broken = true
|
||||
|
||||
[node name="book" parent="Rover_Room" instance=ExtResource( 23 )]
|
||||
transform = Transform( 0, 0, -1.42022, 0, 1.42021, 0, 1.42022, 0, 0, 3.91115, 0.932463, -3.94596 )
|
||||
dialogic_timeline = "rover"
|
||||
|
||||
[node name="CanvasLayer" type="CanvasLayer" parent="."]
|
||||
pause_mode = 1
|
||||
layer = 10
|
||||
@ -449,5 +471,6 @@ layer = 10
|
||||
[connection signal="player_exited" from="cameras/camera_hydroponics" to="cameras" method="_on_camera_room_player_exited"]
|
||||
[connection signal="gen_finished" from="Ore_Conveyor_Room/item_generator" to="Level" method="_on_item_generator_gen_finished"]
|
||||
[connection signal="gen_started" from="Ore_Conveyor_Room/item_generator" to="Level" method="_on_item_generator_gen_started"]
|
||||
[connection signal="comms_established" from="Communications/comm_station" to="game_manager" method="_on_comm_station_comms_established"]
|
||||
|
||||
[editable path="Level"]
|
||||
|
18
scripts/book.gd
Normal file
18
scripts/book.gd
Normal file
@ -0,0 +1,18 @@
|
||||
extends Spatial
|
||||
|
||||
export var dialogic_timeline : String = ""
|
||||
|
||||
func on_player_focus_enter():
|
||||
pass
|
||||
|
||||
func on_player_focus_exit():
|
||||
pass
|
||||
|
||||
func on_player_interact(player) -> bool:
|
||||
var node = Dialogic.start(dialogic_timeline)
|
||||
node.pause_mode = PAUSE_MODE_PROCESS
|
||||
add_child(node)
|
||||
get_tree().paused = true
|
||||
yield(node, "timeline_end")
|
||||
get_tree().paused = false
|
||||
return true
|
@ -28,13 +28,7 @@ func _unhandled_input(event):
|
||||
toggle_pause_menu()
|
||||
|
||||
func _on_player_starved_to_death():
|
||||
var node = Dialogic.start("starve")
|
||||
node.pause_mode = PAUSE_MODE_PROCESS
|
||||
add_child(node)
|
||||
get_tree().paused = true
|
||||
yield(node, "timeline_end")
|
||||
get_tree().paused = false
|
||||
get_tree().change_scene(MainMenuScenePath)
|
||||
play_dialog_and_end_game("starve")
|
||||
|
||||
func play_simple_dialog(var dialog_name : String):
|
||||
var node = Dialogic.start(dialog_name)
|
||||
@ -44,6 +38,15 @@ func play_simple_dialog(var dialog_name : String):
|
||||
yield(node, "timeline_end")
|
||||
get_tree().paused = false
|
||||
|
||||
func play_dialog_and_end_game(var dialog_name : String):
|
||||
var node = Dialogic.start(dialog_name)
|
||||
node.pause_mode = PAUSE_MODE_PROCESS
|
||||
add_child(node)
|
||||
get_tree().paused = true
|
||||
yield(node, "timeline_end")
|
||||
get_tree().change_scene(MainMenuScenePath)
|
||||
get_tree().paused = false
|
||||
|
||||
func reset_day_timer():
|
||||
day_timer.start()
|
||||
|
||||
@ -67,3 +70,6 @@ func _on_Area_area_entered(area):
|
||||
if owner == player:
|
||||
play_simple_dialog("rtg")
|
||||
rtg_trigger.disabled = true
|
||||
|
||||
func _on_comm_station_comms_established():
|
||||
play_dialog_and_end_game("win")
|
||||
|
Loading…
x
Reference in New Issue
Block a user