Boxed the prologue scenario
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -132,6 +132,27 @@ func _process(delta):
|
||||
for e in narration:
|
||||
notifications.narration_notification(e)
|
||||
_state = STATE_IDLE
|
||||
STATE_IDLE:
|
||||
var trig: int = randi() % 2
|
||||
if Input.is_action_just_pressed("move_east") && trig == 1:
|
||||
if $progress.value < 100:
|
||||
$progress.value += (2 + randi() % 4)
|
||||
if Input.is_action_just_pressed("move_west") && trig == 0:
|
||||
if $progress.value < 100:
|
||||
$progress.value += (2 + randi() % 4)
|
||||
if randf() > 0.9:
|
||||
if $progress.value > 0:
|
||||
$progress.value -= (1 + randi() % 2)
|
||||
if $progress.value >= 99:
|
||||
_state = STATE_KICK_TRUNK
|
||||
STATE_KICK_TRUNK:
|
||||
if $vehicle_camera.global_transform.origin.distance_to($car1.global_transform.origin) < 5.0:
|
||||
$car1/trunk_cover.rotation.x = lerp($car1/trunk_cover.rotation.x, PI / 4.0, delta * 0.3)
|
||||
if abs($car1/trunk_cover.rotation.x - PI/4.0) < 0.1:
|
||||
_state = STATE_FINISH
|
||||
STATE_FINISH:
|
||||
var sc = load("res://ui/act1_start.tscn")
|
||||
get_tree().change_scene_to(sc)
|
||||
var grass = [
|
||||
load("res://elements/forest/grass_1.mesh"),
|
||||
load("res://elements/forest/grass_2.mesh"),
|
||||
@@ -202,10 +223,15 @@ func _physics_process(delta):
|
||||
var car_ll = $car1.linear_velocity
|
||||
car_ll.y = 0
|
||||
var car_speed = car_ll.length()
|
||||
if car_speed > 50.0:
|
||||
$car1.engine_force *= (1.0 - delta * 0.2)
|
||||
if car_speed <= 30.0:
|
||||
if $car1.engine_force > 4000.0:
|
||||
$car1.engine_force *= (1.0 + delta * 0.2)
|
||||
else:
|
||||
$car1.engine_force = 4000.0
|
||||
if _state != STATE_KICK_TRUNK:
|
||||
if car_speed > 50.0:
|
||||
$car1.engine_force *= (1.0 - delta * 0.2)
|
||||
if car_speed <= 30.0:
|
||||
if $car1.engine_force > 4000.0:
|
||||
$car1.engine_force *= (1.0 + delta * 0.2)
|
||||
else:
|
||||
$car1.engine_force = 4000.0
|
||||
else:
|
||||
$car1.engine_force = (1.0 - delta * 0.2)
|
||||
if car_speed < 10:
|
||||
$car1.brake = 4000.0
|
||||
|
||||
@@ -1,8 +1,9 @@
|
||||
[gd_scene load_steps=12 format=2]
|
||||
[gd_scene load_steps=16 format=2]
|
||||
|
||||
[ext_resource path="res://prologue.gd" type="Script" id=1]
|
||||
[ext_resource path="res://vehicles/vehicle_camera.gd" type="Script" id=2]
|
||||
[ext_resource path="res://vehicles/cars/car_car1.tscn" type="PackedScene" id=3]
|
||||
[ext_resource path="res://fonts/DroidSansFallback.ttf" type="DynamicFontData" id=4]
|
||||
|
||||
[sub_resource type="ProceduralSky" id=7]
|
||||
sky_energy = 0.7
|
||||
@@ -37,6 +38,18 @@ size = Vector2( 100, 300 )
|
||||
subdivide_width = 200
|
||||
subdivide_depth = 200
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id=11]
|
||||
bg_color = Color( 1, 0, 0, 1 )
|
||||
border_blend = true
|
||||
|
||||
[sub_resource type="StyleBoxFlat" id=12]
|
||||
bg_color = Color( 0.6, 0.6, 0.6, 0 )
|
||||
|
||||
[sub_resource type="DynamicFont" id=13]
|
||||
use_mipmaps = true
|
||||
use_filter = true
|
||||
font_data = ExtResource( 4 )
|
||||
|
||||
[node name="prologue" type="Spatial"]
|
||||
script = ExtResource( 1 )
|
||||
|
||||
@@ -88,3 +101,24 @@ material/0 = null
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 54, 0, 0 )
|
||||
mesh = SubResource( 10 )
|
||||
material/0 = null
|
||||
|
||||
[node name="progress" type="ProgressBar" parent="."]
|
||||
anchor_left = -0.00411183
|
||||
anchor_top = 1.00702
|
||||
anchor_right = 0.995888
|
||||
anchor_bottom = 1.00702
|
||||
margin_left = 8.42108
|
||||
margin_top = -72.9475
|
||||
margin_right = 8.42114
|
||||
margin_bottom = -8.94751
|
||||
rect_min_size = Vector2( 64, 64 )
|
||||
size_flags_horizontal = 3
|
||||
size_flags_vertical = 1
|
||||
custom_styles/fg = SubResource( 11 )
|
||||
custom_styles/bg = SubResource( 12 )
|
||||
custom_fonts/font = SubResource( 13 )
|
||||
custom_colors/font_color = Color( 0, 0, 0, 0 )
|
||||
custom_colors/font_color_shadow = Color( 0.564706, 0.109804, 0.109804, 0.384314 )
|
||||
__meta__ = {
|
||||
"_edit_use_anchors_": true
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ var dist = 0.0
|
||||
func _ready():
|
||||
target = get_node(target_path)
|
||||
|
||||
var speed_slow = 3.5
|
||||
var speed_slow = 4.5
|
||||
var speed_fast = 8.5
|
||||
var speed_cur = 3.5
|
||||
|
||||
@@ -18,11 +18,14 @@ func _process(delta):
|
||||
var p2 = target.global_transform.origin
|
||||
dist = p1.distance_to(p2)
|
||||
if dist < 20.0:
|
||||
speed_cur -= delta * 0.1
|
||||
elif dist >= 20.0:
|
||||
speed_cur -= delta * 0.2
|
||||
elif dist >= 25.0:
|
||||
speed_cur += delta * 0.1
|
||||
speed_cur = clamp(speed_cur, speed_slow, speed_fast)
|
||||
p1 = p1.linear_interpolate(p2, clamp(speed_cur * delta, 0.0, 1.0))
|
||||
if dist < 10.0 && dist > 3.5:
|
||||
p1 = p1.linear_interpolate(p2, clamp(speed_cur * delta * (dist / 6.0 - 2.0 / 3.0), 0.0, 1.0))
|
||||
elif dist >= 10.0:
|
||||
p1 = p1.linear_interpolate(p2, clamp(speed_cur * delta, 0.0, 1.0))
|
||||
p1.y = 1.4
|
||||
global_transform.origin = p1
|
||||
# elif dist >= 30.0:
|
||||
|
||||
Reference in New Issue
Block a user