Arcology Update
updated textures and collision on Young Arcology
This commit is contained in:
+121
-120
@@ -1,5 +1,6 @@
|
|||||||
extends CharacterBody3D
|
extends CharacterBody3D
|
||||||
## PASTE 2026-09-27 — Station volume includes pads. Habitat trimesh collision + stair step.
|
## PASTE 2026-10-10 — Habitat trimesh. View stairs + port ring are floors.
|
||||||
|
|
||||||
|
|
||||||
@export var speed: float = 5.5
|
@export var speed: float = 5.5
|
||||||
@export var sprint_speed: float = 9.0
|
@export var sprint_speed: float = 9.0
|
||||||
@@ -75,6 +76,8 @@ const WALK_FLOORS: Array[String] = [
|
|||||||
"Yard_Bridges", "Yard_Stairs", "Yard_CollarWalk", "Yard_Piers",
|
"Yard_Bridges", "Yard_Stairs", "Yard_CollarWalk", "Yard_Piers",
|
||||||
"Dock_Gallery", "Dock_Threshold",
|
"Dock_Gallery", "Dock_Threshold",
|
||||||
"Elev_Landings", "Fusion_Basemat", "Fusion_AmbulatoryWide",
|
"Elev_Landings", "Fusion_Basemat", "Fusion_AmbulatoryWide",
|
||||||
|
"Fusion_HeaderStands",
|
||||||
|
"Port_Ring",
|
||||||
"Live_Terraces",
|
"Live_Terraces",
|
||||||
]
|
]
|
||||||
const WALK_WALLS: Array[String] = [
|
const WALK_WALLS: Array[String] = [
|
||||||
@@ -117,14 +120,34 @@ var interact_cd: float = 0.0
|
|||||||
var jump_anim_cd: float = 0.0
|
var jump_anim_cd: float = 0.0
|
||||||
var _crust_on: bool = false
|
var _crust_on: bool = false
|
||||||
var _moon_colliders: Array[PhysicsBody3D] = []
|
var _moon_colliders: Array[PhysicsBody3D] = []
|
||||||
var _movement_input: Vector2 = Vector2.ZERO
|
|
||||||
var _fire_requested: bool = false
|
|
||||||
|
func _ensure_action(action: String, keycode: Key) -> void:
|
||||||
|
if not InputMap.has_action(action):
|
||||||
|
InputMap.add_action(action)
|
||||||
|
for ev in InputMap.action_get_events(action):
|
||||||
|
if ev is InputEventKey and (ev as InputEventKey).physical_keycode == keycode:
|
||||||
|
return
|
||||||
|
var evk := InputEventKey.new()
|
||||||
|
evk.physical_keycode = keycode
|
||||||
|
InputMap.action_add_event(action, evk)
|
||||||
|
|
||||||
|
|
||||||
|
func _ensure_default_actions() -> void:
|
||||||
|
_ensure_action("interact", KEY_F)
|
||||||
|
_ensure_action("mag_boots", KEY_C)
|
||||||
|
_ensure_action("toggle_mag_boots", KEY_C)
|
||||||
|
_ensure_action("toggle_pistol", KEY_G)
|
||||||
|
_ensure_action("reload", KEY_R)
|
||||||
|
_ensure_action("toggle_inventory", KEY_TAB)
|
||||||
|
_ensure_action("toggle_first_person", KEY_V)
|
||||||
|
_ensure_action("sprint", KEY_SHIFT)
|
||||||
|
_ensure_action("eva_roll_left", KEY_Q)
|
||||||
|
_ensure_action("eva_roll_right", KEY_E)
|
||||||
|
|
||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
GameplayInput.command_requested.connect(_handle_gameplay_command)
|
_ensure_default_actions()
|
||||||
GameplayInput.transient_input_cleared.connect(_clear_player_input)
|
|
||||||
GameplayInput.set_context(GameplayInput.Context.ON_FOOT)
|
|
||||||
scale = Vector3.ONE
|
scale = Vector3.ONE
|
||||||
safe_margin = 0.05
|
safe_margin = 0.05
|
||||||
floor_snap_length = 0.45
|
floor_snap_length = 0.45
|
||||||
@@ -363,7 +386,6 @@ func _find_l5_spawn() -> Node3D:
|
|||||||
|
|
||||||
func set_in_vehicle(value: bool) -> void:
|
func set_in_vehicle(value: bool) -> void:
|
||||||
in_vehicle = value
|
in_vehicle = value
|
||||||
_clear_player_input()
|
|
||||||
if value:
|
if value:
|
||||||
pressurized = true
|
pressurized = true
|
||||||
_set_moon_surface_visible(true)
|
_set_moon_surface_visible(true)
|
||||||
@@ -389,10 +411,7 @@ func _update_waist_aim() -> void:
|
|||||||
look_loader.set_aim_pitch(pitch)
|
look_loader.set_aim_pitch(pitch)
|
||||||
|
|
||||||
|
|
||||||
## Updates device-independent camera look before existing visual camera smoothing.
|
|
||||||
func _process(delta: float) -> void:
|
func _process(delta: float) -> void:
|
||||||
if not in_vehicle:
|
|
||||||
_update_player_look(delta)
|
|
||||||
if first_person:
|
if first_person:
|
||||||
_cam_pos_target = _fp_cam_pos()
|
_cam_pos_target = _fp_cam_pos()
|
||||||
_update_fp_meshes()
|
_update_fp_meshes()
|
||||||
@@ -707,17 +726,92 @@ func _set_alt_look(on: bool) -> void:
|
|||||||
camera_pivot.rotation.z = 0.0
|
camera_pivot.rotation.z = 0.0
|
||||||
|
|
||||||
|
|
||||||
## Keeps development shortcuts separate from remappable gameplay controls.
|
|
||||||
func _unhandled_input(event: InputEvent) -> void:
|
func _unhandled_input(event: InputEvent) -> void:
|
||||||
if in_vehicle or not GameplayInput.gameplay_enabled():
|
if in_vehicle:
|
||||||
return
|
return
|
||||||
|
if vendor_menu and vendor_menu.visible:
|
||||||
|
if event.is_action_pressed("ui_cancel"):
|
||||||
|
close_vendor_menu()
|
||||||
|
return
|
||||||
|
if event is InputEventKey and event.keycode == KEY_QUOTELEFT:
|
||||||
|
if event.pressed:
|
||||||
|
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
|
||||||
|
else:
|
||||||
|
if not get_tree().paused and not (vendor_menu and vendor_menu.visible):
|
||||||
|
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
||||||
|
return
|
||||||
|
if event is InputEventKey and event.keycode == KEY_ALT:
|
||||||
|
_set_alt_look(event.pressed)
|
||||||
|
return
|
||||||
|
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_RIGHT:
|
||||||
|
if pistol_drawn:
|
||||||
|
ads = event.pressed
|
||||||
|
_apply_camera_mode(false)
|
||||||
|
if event is InputEventMouseButton and event.button_index == MOUSE_BUTTON_LEFT and event.pressed:
|
||||||
|
if pistol_drawn:
|
||||||
|
_try_fire()
|
||||||
|
if event is InputEventMouseMotion and Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:
|
||||||
|
if _is_eva():
|
||||||
|
# Whole-body look in 1P and 3P EVA. World-Y yaw felt broken after a roll.
|
||||||
|
rotate_object_local(Vector3.UP, -event.relative.x * mouse_sensitivity)
|
||||||
|
rotate_object_local(Vector3.RIGHT, -event.relative.y * mouse_sensitivity)
|
||||||
|
if camera_pivot:
|
||||||
|
camera_pivot.rotation = Vector3.ZERO
|
||||||
|
elif first_person:
|
||||||
|
if free_looking:
|
||||||
|
# Euler SET — rotate_x+rotate_y on a pitched pivot was the warp.
|
||||||
|
free_look_yaw -= event.relative.x * mouse_sensitivity
|
||||||
|
free_look_pitch -= event.relative.y * mouse_sensitivity
|
||||||
|
free_look_pitch = clamp(free_look_pitch, deg_to_rad(-78), deg_to_rad(62))
|
||||||
|
free_look_yaw = clamp(free_look_yaw, deg_to_rad(-75), deg_to_rad(75))
|
||||||
|
camera_pivot.rotation = Vector3(free_look_pitch, free_look_yaw, 0.0)
|
||||||
|
else:
|
||||||
|
rotate_y(-event.relative.x * mouse_sensitivity)
|
||||||
|
camera_pivot.rotate_x(-event.relative.y * mouse_sensitivity)
|
||||||
|
camera_pivot.rotation.x = clamp(camera_pivot.rotation.x, deg_to_rad(-78), deg_to_rad(85))
|
||||||
|
elif free_looking:
|
||||||
|
free_look_yaw -= event.relative.x * free_look_sensitivity
|
||||||
|
free_look_pitch -= event.relative.y * free_look_sensitivity
|
||||||
|
free_look_pitch = clamp(free_look_pitch, deg_to_rad(-80), deg_to_rad(80))
|
||||||
|
if camera_pivot:
|
||||||
|
camera_pivot.rotation.y = free_look_yaw
|
||||||
|
camera_pivot.rotation.x = free_look_pitch
|
||||||
|
else:
|
||||||
|
rotate_y(-event.relative.x * mouse_sensitivity)
|
||||||
|
camera_pivot.rotate_x(-event.relative.y * mouse_sensitivity)
|
||||||
|
camera_pivot.rotation.x = clamp(camera_pivot.rotation.x, deg_to_rad(-78), deg_to_rad(55))
|
||||||
if event is InputEventKey and event.pressed and not event.echo:
|
if event is InputEventKey and event.pressed and not event.echo:
|
||||||
match event.keycode:
|
match event.keycode:
|
||||||
|
KEY_1:
|
||||||
|
_toggle_pistol()
|
||||||
KEY_F3:
|
KEY_F3:
|
||||||
_debug_fp_eye()
|
_debug_fp_eye()
|
||||||
KEY_F4:
|
KEY_F4:
|
||||||
if look_loader and look_loader.has_method("cycle_arm_axis"):
|
if look_loader and look_loader.has_method("cycle_arm_axis"):
|
||||||
look_loader.cycle_arm_axis()
|
look_loader.cycle_arm_axis()
|
||||||
|
if event.is_action_pressed("interact"):
|
||||||
|
if can_interact and current_interactable:
|
||||||
|
_try_interact()
|
||||||
|
if event.is_action_pressed("mag_boots"):
|
||||||
|
mag_boots_on = not mag_boots_on
|
||||||
|
if mag_boots_on:
|
||||||
|
eva_peak_height = 0.0
|
||||||
|
velocity = velocity.slide(_walk_up()) * 0.35
|
||||||
|
_align_walk(_walk_up())
|
||||||
|
_reset_camera_to_walk()
|
||||||
|
print("Mag Boots: ", "ON" if mag_boots_on else "OFF")
|
||||||
|
if event.is_action_pressed("toggle_pistol"):
|
||||||
|
_toggle_pistol()
|
||||||
|
if event.is_action_pressed("reload"):
|
||||||
|
_reload_pistol()
|
||||||
|
if event.is_action_pressed("toggle_inventory"):
|
||||||
|
inventory_open = not inventory_open
|
||||||
|
if event.is_action_pressed("toggle_first_person"):
|
||||||
|
if in_vehicle:
|
||||||
|
return
|
||||||
|
first_person = not first_person
|
||||||
|
_set_alt_look(false)
|
||||||
|
_apply_camera_mode(false)
|
||||||
if event.is_action_pressed("ui_page_up"):
|
if event.is_action_pressed("ui_page_up"):
|
||||||
food = min(food + 25.0, 100.0)
|
food = min(food + 25.0, 100.0)
|
||||||
if event.is_action_pressed("ui_page_down"):
|
if event.is_action_pressed("ui_page_down"):
|
||||||
@@ -734,93 +828,6 @@ func _unhandled_input(event: InputEvent) -> void:
|
|||||||
banner.hide_banner()
|
banner.hide_banner()
|
||||||
|
|
||||||
|
|
||||||
## Dispatches device-independent commands only while the player owns control.
|
|
||||||
func _handle_gameplay_command(action: StringName, command_context: int) -> void:
|
|
||||||
if in_vehicle or command_context != GameplayInput.Context.ON_FOOT or GameplayInput.context != command_context:
|
|
||||||
return
|
|
||||||
match action:
|
|
||||||
&"interact":
|
|
||||||
if can_interact and current_interactable:
|
|
||||||
_try_interact()
|
|
||||||
&"combat_fire":
|
|
||||||
_fire_requested = pistol_drawn
|
|
||||||
&"combat_reload":
|
|
||||||
_reload_pistol()
|
|
||||||
&"combat_toggle_weapon":
|
|
||||||
_toggle_pistol()
|
|
||||||
&"character_toggle_inventory":
|
|
||||||
inventory_open = not inventory_open
|
|
||||||
&"toggle_view":
|
|
||||||
first_person = not first_person
|
|
||||||
_set_alt_look(false)
|
|
||||||
_apply_camera_mode(false)
|
|
||||||
&"character_toggle_mag_boots":
|
|
||||||
_toggle_magnetic_boots()
|
|
||||||
|
|
||||||
|
|
||||||
## Toggles boots without changing the existing landing or gravity mechanics.
|
|
||||||
func _toggle_magnetic_boots() -> void:
|
|
||||||
mag_boots_on = not mag_boots_on
|
|
||||||
if mag_boots_on:
|
|
||||||
eva_peak_height = 0.0
|
|
||||||
velocity = velocity.slide(_walk_up()) * 0.35
|
|
||||||
_align_walk(_walk_up())
|
|
||||||
_reset_camera_to_walk()
|
|
||||||
print("Mag Boots: ", "ON" if mag_boots_on else "OFF")
|
|
||||||
|
|
||||||
|
|
||||||
## Clears pending shots and held camera states at input ownership boundaries.
|
|
||||||
func _clear_player_input() -> void:
|
|
||||||
_movement_input = Vector2.ZERO
|
|
||||||
_fire_requested = false
|
|
||||||
ads = false
|
|
||||||
_set_alt_look(false)
|
|
||||||
_apply_camera_mode(false)
|
|
||||||
|
|
||||||
|
|
||||||
## Combines mouse displacement and time-scaled controller turn rate once per frame.
|
|
||||||
func _update_player_look(delta: float) -> void:
|
|
||||||
var cursor_released := GameplayInput.is_held(&"release_cursor")
|
|
||||||
if GameplayInput.gameplay_enabled():
|
|
||||||
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE if cursor_released else Input.MOUSE_MODE_CAPTURED
|
|
||||||
var next_freelook := GameplayInput.is_held(&"freelook")
|
|
||||||
if next_freelook != free_looking:
|
|
||||||
_set_alt_look(next_freelook)
|
|
||||||
var next_aim := pistol_drawn and GameplayInput.is_held(&"combat_aim")
|
|
||||||
if next_aim != ads:
|
|
||||||
ads = next_aim
|
|
||||||
_apply_camera_mode(false)
|
|
||||||
var mouse_displacement := GameplayInput.consume_mouse_displacement()
|
|
||||||
if cursor_released:
|
|
||||||
return
|
|
||||||
var sensitivity := free_look_sensitivity if free_looking and not first_person else mouse_sensitivity
|
|
||||||
_apply_player_look(mouse_displacement * sensitivity + GameplayInput.read_controller_look(delta))
|
|
||||||
|
|
||||||
|
|
||||||
## Applies radians of yaw/pitch to existing walking, freelook, and body-local EVA modes.
|
|
||||||
func _apply_player_look(look_delta: Vector2) -> void:
|
|
||||||
if camera_pivot == null or look_delta == Vector2.ZERO:
|
|
||||||
return
|
|
||||||
if _is_eva():
|
|
||||||
rotate_object_local(Vector3.UP, -look_delta.x)
|
|
||||||
rotate_object_local(Vector3.RIGHT, -look_delta.y)
|
|
||||||
camera_pivot.rotation = Vector3.ZERO
|
|
||||||
elif free_looking:
|
|
||||||
free_look_yaw -= look_delta.x
|
|
||||||
free_look_pitch -= look_delta.y
|
|
||||||
var minimum_pitch := deg_to_rad(-78.0) if first_person else deg_to_rad(-80.0)
|
|
||||||
var maximum_pitch := deg_to_rad(62.0) if first_person else deg_to_rad(80.0)
|
|
||||||
free_look_pitch = clampf(free_look_pitch, minimum_pitch, maximum_pitch)
|
|
||||||
if first_person:
|
|
||||||
free_look_yaw = clampf(free_look_yaw, deg_to_rad(-75.0), deg_to_rad(75.0))
|
|
||||||
camera_pivot.rotation = Vector3(free_look_pitch, free_look_yaw, 0.0)
|
|
||||||
else:
|
|
||||||
rotate_y(-look_delta.x)
|
|
||||||
var maximum_pitch := deg_to_rad(85.0) if first_person else deg_to_rad(55.0)
|
|
||||||
camera_pivot.rotation.x = clampf(camera_pivot.rotation.x - look_delta.y, deg_to_rad(-78.0), maximum_pitch)
|
|
||||||
|
|
||||||
|
|
||||||
## Samples movement once and consumes queued jump/fire requests on physics ticks.
|
|
||||||
func _physics_process(delta: float) -> void:
|
func _physics_process(delta: float) -> void:
|
||||||
_update_crust_exception()
|
_update_crust_exception()
|
||||||
if fire_cd > 0.0:
|
if fire_cd > 0.0:
|
||||||
@@ -834,12 +841,6 @@ func _physics_process(delta: float) -> void:
|
|||||||
if vendor_menu and vendor_menu.visible:
|
if vendor_menu and vendor_menu.visible:
|
||||||
velocity = Vector3.ZERO
|
velocity = Vector3.ZERO
|
||||||
return
|
return
|
||||||
_movement_input = GameplayInput.read_movement()
|
|
||||||
var jump_requested := GameplayInput.consume_jump_request()
|
|
||||||
if _fire_requested:
|
|
||||||
_fire_requested = false
|
|
||||||
if GameplayInput.gameplay_enabled() and pistol_drawn:
|
|
||||||
_try_fire()
|
|
||||||
if is_on_floor():
|
if is_on_floor():
|
||||||
coyote_time = 0.14
|
coyote_time = 0.14
|
||||||
else:
|
else:
|
||||||
@@ -848,15 +849,17 @@ func _physics_process(delta: float) -> void:
|
|||||||
var gvec: Vector3 = _soi_gravity()
|
var gvec: Vector3 = _soi_gravity()
|
||||||
if _is_eva():
|
if _is_eva():
|
||||||
_set_body_visible(true)
|
_set_body_visible(true)
|
||||||
var roll_input := GameplayInput.read_axis(&"eva_roll_left", &"eva_roll_right")
|
if Input.is_action_pressed("eva_roll_left") or Input.is_key_pressed(KEY_Q):
|
||||||
rotate_object_local(Vector3.FORWARD, roll_input * 2.2 * delta)
|
rotate_object_local(Vector3.FORWARD, -2.2 * delta)
|
||||||
|
if Input.is_action_pressed("eva_roll_right") or Input.is_key_pressed(KEY_E):
|
||||||
|
rotate_object_local(Vector3.FORWARD, 2.2 * delta)
|
||||||
if gvec.length() > 0.01:
|
if gvec.length() > 0.01:
|
||||||
velocity += gvec * delta
|
velocity += gvec * delta
|
||||||
var input_dir_eva: Vector2 = _movement_input
|
var input_dir_eva: Vector2 = Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down")
|
||||||
if input_dir_eva.length() > 0.001:
|
if input_dir_eva.length() > 0.1:
|
||||||
var thrust: Vector3 = (
|
var thrust: Vector3 = (
|
||||||
-transform.basis.z * -input_dir_eva.y + transform.basis.x * input_dir_eva.x
|
-transform.basis.z * -input_dir_eva.y + transform.basis.x * input_dir_eva.x
|
||||||
) * speed * 0.35
|
).normalized() * speed * 0.35
|
||||||
velocity += thrust * delta
|
velocity += thrust * delta
|
||||||
move_and_slide()
|
move_and_slide()
|
||||||
_process_needs(delta)
|
_process_needs(delta)
|
||||||
@@ -876,13 +879,13 @@ func _physics_process(delta: float) -> void:
|
|||||||
else:
|
else:
|
||||||
g_amt = maxf(g_amt, MOON_G)
|
g_amt = maxf(g_amt, MOON_G)
|
||||||
velocity += -up * g_amt * delta
|
velocity += -up * g_amt * delta
|
||||||
var input_dir: Vector2 = _movement_input
|
var input_dir: Vector2 = Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down")
|
||||||
var direction: Vector3 = (transform.basis * Vector3(input_dir.x, 0.0, input_dir.y)).slide(up)
|
var direction: Vector3 = (transform.basis * Vector3(input_dir.x, 0.0, input_dir.y)).slide(up)
|
||||||
if direction.length() > 0.001:
|
if direction.length() > 0.001:
|
||||||
direction = direction.normalized() * input_dir.length()
|
direction = direction.normalized()
|
||||||
else:
|
else:
|
||||||
direction = Vector3.ZERO
|
direction = Vector3.ZERO
|
||||||
var want_sprint: bool = GameplayInput.sprint_enabled and input_dir.y < -0.12
|
var want_sprint: bool = Input.is_action_pressed("sprint") and input_dir.y < -0.12
|
||||||
var current_speed: float = sprint_speed if want_sprint else speed
|
var current_speed: float = sprint_speed if want_sprint else speed
|
||||||
if ads and pistol_drawn:
|
if ads and pistol_drawn:
|
||||||
current_speed *= ads_sprint_scale if want_sprint else ads_walk_scale
|
current_speed *= ads_sprint_scale if want_sprint else ads_walk_scale
|
||||||
@@ -904,13 +907,13 @@ func _physics_process(delta: float) -> void:
|
|||||||
velocity = v_h + up * v_up
|
velocity = v_h + up * v_up
|
||||||
# Jump LAST so floor rebuild cannot eat or replace the impulse.
|
# Jump LAST so floor rebuild cannot eat or replace the impulse.
|
||||||
var can_jump: bool = is_on_floor() or coyote_time > 0.0
|
var can_jump: bool = is_on_floor() or coyote_time > 0.0
|
||||||
if jump_requested and can_jump:
|
if Input.is_action_just_pressed("ui_accept") and can_jump:
|
||||||
coyote_time = 0.0
|
coyote_time = 0.0
|
||||||
jump_anim_cd = 0.45
|
jump_anim_cd = 0.45
|
||||||
var jv: float = 1.7 if mag_boots_on else 6.4
|
var jv: float = 1.7 if mag_boots_on else 6.4
|
||||||
velocity = velocity.slide(up) + up * jv
|
velocity = velocity.slide(up) + up * jv
|
||||||
print("JUMP boots=", mag_boots_on, " jv=", jv, " g=", g_amt, " floor=", is_on_floor())
|
print("JUMP boots=", mag_boots_on, " jv=", jv, " g=", g_amt, " floor=", is_on_floor())
|
||||||
if is_on_floor() and not jump_requested:
|
if is_on_floor() and not Input.is_action_just_pressed("ui_accept"):
|
||||||
_try_step(up)
|
_try_step(up)
|
||||||
move_and_slide()
|
move_and_slide()
|
||||||
_keep_walk_upright()
|
_keep_walk_upright()
|
||||||
@@ -1033,7 +1036,6 @@ func open_vendor_menu() -> void:
|
|||||||
func close_vendor_menu() -> void:
|
func close_vendor_menu() -> void:
|
||||||
if vendor_menu:
|
if vendor_menu:
|
||||||
vendor_menu.visible = false
|
vendor_menu.visible = false
|
||||||
GameplayInput.set_menu_open(vendor_menu, false)
|
|
||||||
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
|
||||||
|
|
||||||
|
|
||||||
@@ -1056,10 +1058,10 @@ func _update_animations() -> void:
|
|||||||
_play_move_anim("Idle")
|
_play_move_anim("Idle")
|
||||||
return
|
return
|
||||||
# Stick, not velocity — accel must not pick the clip.
|
# Stick, not velocity — accel must not pick the clip.
|
||||||
var stick: Vector2 = _movement_input
|
var stick: Vector2 = Input.get_vector("ui_left", "ui_right", "ui_up", "ui_down")
|
||||||
var strafe: float = clampf(stick.x, -1.0, 1.0)
|
var strafe: float = clampf(stick.x, -1.0, 1.0)
|
||||||
var back: float = clampf(stick.y, -1.0, 1.0)
|
var back: float = clampf(stick.y, -1.0, 1.0)
|
||||||
var want_sprint: bool = GameplayInput.sprint_enabled and stick.y < -0.12
|
var want_sprint: bool = Input.is_action_pressed("sprint") and stick.y < -0.12
|
||||||
var run_amt: float = 1.0 if want_sprint else 0.0
|
var run_amt: float = 1.0 if want_sprint else 0.0
|
||||||
if look_loader and look_loader.has_method("set_loco"):
|
if look_loader and look_loader.has_method("set_loco"):
|
||||||
look_loader.set_loco(strafe, back, run_amt, dt, _is_aiming())
|
look_loader.set_loco(strafe, back, run_amt, dt, _is_aiming())
|
||||||
@@ -1074,7 +1076,7 @@ func _update_animations() -> void:
|
|||||||
|
|
||||||
func _update_hud() -> void:
|
func _update_hud() -> void:
|
||||||
if needs_label:
|
if needs_label:
|
||||||
var interact_text: String = " [%s] Use" % GameplayInput.binding_label(&"interact") if can_interact else ""
|
var interact_text: String = " [F] Use" if can_interact else ""
|
||||||
var gun_text: String = ""
|
var gun_text: String = ""
|
||||||
if pistol_drawn:
|
if pistol_drawn:
|
||||||
gun_text = " | PISTOL %d/%d%s" % [pistol_ammo, pistol_reserve, " ADS" if ads else ""]
|
gun_text = " | PISTOL %d/%d%s" % [pistol_ammo, pistol_reserve, " ADS" if ads else ""]
|
||||||
@@ -1283,4 +1285,3 @@ func _try_step(up: Vector3) -> void:
|
|||||||
if lift < 0.04 or lift > STEP_HEIGHT:
|
if lift < 0.04 or lift > STEP_HEIGHT:
|
||||||
return
|
return
|
||||||
global_position += up * (lift + 0.02)
|
global_position += up * (lift + 0.02)
|
||||||
|
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
[gd_scene format=3 uid="uid://cqa6tjsx6i2e3"]
|
[gd_scene format=3 uid="uid://cqa6tjsx6i2e3"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://bs88v1pkp2opr" path="res://Young_2077.glb" id="1_gctqc"]
|
[ext_resource type="PackedScene" uid="uid://2f8ctlljoctl" path="res://Young_2077 (1).glb" id="1_gctqc"]
|
||||||
|
|
||||||
[node name="Node3D" type="Node3D" unique_id=1355800869]
|
[node name="Node3D" type="Node3D" unique_id=1666290284]
|
||||||
|
|
||||||
[node name="Young" parent="." unique_id=1459793303 instance=ExtResource("1_gctqc")]
|
[node name="Young" parent="." unique_id=236395303 instance=ExtResource("1_gctqc")]
|
||||||
|
|||||||
+4
-9184
File diff suppressed because one or more lines are too long
BIN
Binary file not shown.
@@ -3,13 +3,13 @@
|
|||||||
importer="scene"
|
importer="scene"
|
||||||
importer_version=1
|
importer_version=1
|
||||||
type="PackedScene"
|
type="PackedScene"
|
||||||
uid="uid://bs88v1pkp2opr"
|
uid="uid://2f8ctlljoctl"
|
||||||
path="res://.godot/imported/Young_2077.glb-7aaf8ddc11fa9df7f27a6eddd82a45e1.scn"
|
path="res://.godot/imported/Young_2077 (1).glb-d115b3b196cc7b5a6c0bcb6e2eaf2a63.scn"
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077.glb"
|
source_file="res://Young_2077 (1).glb"
|
||||||
dest_files=["res://.godot/imported/Young_2077.glb-7aaf8ddc11fa9df7f27a6eddd82a45e1.scn"]
|
dest_files=["res://.godot/imported/Young_2077 (1).glb-d115b3b196cc7b5a6c0bcb6e2eaf2a63.scn"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://qj5pba1nqy2x"
|
||||||
|
path="res://.godot/imported/Young_2077 (1)_blast.png-08a7c5a27948d516df9c0d30dd7b615b.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "d6aa4936eecbaaa962450eb3e1c70146"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Young_2077 (1)_blast.png"
|
||||||
|
dest_files=["res://.godot/imported/Young_2077 (1)_blast.png-08a7c5a27948d516df9c0d30dd7b615b.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://spi08lnpt7ip"
|
uid="uid://djne54xci5iqs"
|
||||||
path="res://.godot/imported/Young_2077_brick.png-5bd8d5b5b7f73ec03855fa602284c10b.ctex"
|
path="res://.godot/imported/Young_2077 (1)_brick.png-1f3e42f1c31af4fb6602726241fd0df6.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
@@ -13,8 +13,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_brick.png"
|
source_file="res://Young_2077 (1)_brick.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_brick.png-5bd8d5b5b7f73ec03855fa602284c10b.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_brick.png-1f3e42f1c31af4fb6602726241fd0df6.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://20f80n21d46j"
|
uid="uid://82ifmradciqo"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_core.png-e72e5e3deb547c04117a9ec816abec93.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_core.png-1b4511781a639c01b88fd393719fab61.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_core.png"
|
source_file="res://Young_2077 (1)_core.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_core.png-e72e5e3deb547c04117a9ec816abec93.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_core.png-1b4511781a639c01b88fd393719fab61.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://ca75rn0cohjl"
|
uid="uid://by23y35cqceo0"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_cyber.png-9c506a502f916ddac2efe6e19e6917bb.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_cyber.png-37115e0334a2c3ffece8013ff2f3227b.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_cyber.png"
|
source_file="res://Young_2077 (1)_cyber.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_cyber.png-9c506a502f916ddac2efe6e19e6917bb.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_cyber.png-37115e0334a2c3ffece8013ff2f3227b.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dxsyl2preexp2"
|
uid="uid://ubc7yx0a1od5"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_cyber_emit.png-df6c0f98bc5e1718b500f219d9492002.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_cyber_emit.png-bd6eb4df6d46511c2b114119a3996e03.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_cyber_emit.png"
|
source_file="res://Young_2077 (1)_cyber_emit.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_cyber_emit.png-df6c0f98bc5e1718b500f219d9492002.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_cyber_emit.png-bd6eb4df6d46511c2b114119a3996e03.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bb47b3lobt6ob"
|
uid="uid://7tb628tmiqt0"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_elev.png-f073fc23f2a7ed2242a006b15a04f33a.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_elev.png-5eea619045bf26db853181a908310b5a.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_elev.png"
|
source_file="res://Young_2077 (1)_elev.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_elev.png-f073fc23f2a7ed2242a006b15a04f33a.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_elev.png-5eea619045bf26db853181a908310b5a.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://5571ygam76sn"
|
uid="uid://c4gkd4ft3x5bt"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_hab.png-98f1c86cd37466f995035871e568b19f.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_hab.png-b358f169a119dd40665884a7e510b725.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_hab.png"
|
source_file="res://Young_2077 (1)_hab.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_hab.png-98f1c86cd37466f995035871e568b19f.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_hab.png-b358f169a119dd40665884a7e510b725.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cvkudulwacfv5"
|
uid="uid://w3jluul55dtq"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_landing.png-580f79ac1d84cdcf6026c083dab58a6e.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_landing.png-c81469cbea28cc5ad1b08fab83d3a968.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_landing.png"
|
source_file="res://Young_2077 (1)_landing.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_landing.png-580f79ac1d84cdcf6026c083dab58a6e.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_landing.png-c81469cbea28cc5ad1b08fab83d3a968.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://b00u6ue1l0dq2"
|
uid="uid://er3o0bw7ygcq"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_machine.png-ed5dad4accd44c63ee43273a867dfdf8.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_machine.png-ac6711f1a2b409b3acac3b75e9bc178a.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_machine.png"
|
source_file="res://Young_2077 (1)_machine.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_machine.png-ed5dad4accd44c63ee43273a867dfdf8.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_machine.png-ac6711f1a2b409b3acac3b75e9bc178a.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://c5dr10k3lhptk"
|
uid="uid://ss811cc2ihfh"
|
||||||
path="res://.godot/imported/Young_2077_marble.png-83b704b5d1e6327653959f27f34d7431.ctex"
|
path="res://.godot/imported/Young_2077 (1)_marble.png-38586475dafeaa381d310ffca8e735bc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
}
|
}
|
||||||
@@ -13,8 +13,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_marble.png"
|
source_file="res://Young_2077 (1)_marble.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_marble.png-83b704b5d1e6327653959f27f34d7431.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_marble.png-38586475dafeaa381d310ffca8e735bc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://d1trkcen3ftf"
|
uid="uid://d2x7om4dvwmu3"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_panel.png-3bc818c4d058dd91ff53f23af7976a19.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_panel.png-d36bda925d11b89ace11006b498012e6.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_panel.png"
|
source_file="res://Young_2077 (1)_panel.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_panel.png-3bc818c4d058dd91ff53f23af7976a19.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_panel.png-d36bda925d11b89ace11006b498012e6.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://cd607o8u8rnoe"
|
uid="uid://bqkp3bduwjohg"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_pillar.png-181f4f5801bd3fb0749f2f8b9b2edcbd.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_pillar.png-1959928c5faadd3c118378197bbc6615.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_pillar.png"
|
source_file="res://Young_2077 (1)_pillar.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_pillar.png-181f4f5801bd3fb0749f2f8b9b2edcbd.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_pillar.png-1959928c5faadd3c118378197bbc6615.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
BIN
Binary file not shown.
@@ -2,20 +2,20 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bso5nwkt6po7x"
|
uid="uid://bgyplv6rdgflo"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_blast.png-3d97ed2a2bd10a15bf176b41e0fdab9d.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_plate.png-cc546eb169b15ce658b95bd135251fc7.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
}
|
}
|
||||||
generator_parameters={
|
generator_parameters={
|
||||||
"md5": "d6aa4936eecbaaa962450eb3e1c70146"
|
"md5": "5b9ba292a904ed7cf06dad137b16cde3"
|
||||||
}
|
}
|
||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_blast.png"
|
source_file="res://Young_2077 (1)_plate.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_blast.png-3d97ed2a2bd10a15bf176b41e0fdab9d.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_plate.png-cc546eb169b15ce658b95bd135251fc7.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
BIN
Binary file not shown.
@@ -0,0 +1,44 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bjgm0my8yem3m"
|
||||||
|
path.s3tc="res://.godot/imported/Young_2077 (1)_plate_l1.png-4ef6fc5734a558f77bc113245c254002.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "b29ffbe757f119d54c7d462ea930cc77"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Young_2077 (1)_plate_l1.png"
|
||||||
|
dest_files=["res://.godot/imported/Young_2077 (1)_plate_l1.png-4ef6fc5734a558f77bc113245c254002.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
BIN
Binary file not shown.
@@ -0,0 +1,44 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://bsssj0pbxifeh"
|
||||||
|
path.s3tc="res://.godot/imported/Young_2077 (1)_plate_l4.png-f8dc400a2dd9b45f62932446445b1867.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "e322360e5baadc6c332ba39df1f3dea9"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Young_2077 (1)_plate_l4.png"
|
||||||
|
dest_files=["res://.godot/imported/Young_2077 (1)_plate_l4.png-f8dc400a2dd9b45f62932446445b1867.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
BIN
Binary file not shown.
@@ -0,0 +1,44 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b6bbcpawt05xw"
|
||||||
|
path.s3tc="res://.godot/imported/Young_2077 (1)_plate_l5.png-cbbb3c01b24ee3c7d625b3bf07812e2b.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "a10c9b54f300420cd3efda1ffec7e8c6"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Young_2077 (1)_plate_l5.png"
|
||||||
|
dest_files=["res://.godot/imported/Young_2077 (1)_plate_l5.png-cbbb3c01b24ee3c7d625b3bf07812e2b.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bqsegbrmbkqn0"
|
uid="uid://covdrcj2rhfa2"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_rib.png-20cb6beac176f488f2bc480ee52c8e51.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_rib.png-adc4f5ea485d94e77c47d0b9c48fda93.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_rib.png"
|
source_file="res://Young_2077 (1)_rib.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_rib.png-20cb6beac176f488f2bc480ee52c8e51.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_rib.png-adc4f5ea485d94e77c47d0b9c48fda93.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://15ilicb345pk"
|
uid="uid://dqy1hhuvcq1h"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_school.png-416a9d9b58fc0973e773fb09e02320f8.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_school.png-361b7ffc60763a40e0bca7a0c2f30a82.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_school.png"
|
source_file="res://Young_2077 (1)_school.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_school.png-416a9d9b58fc0973e773fb09e02320f8.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_school.png-361b7ffc60763a40e0bca7a0c2f30a82.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bs18lajcddph4"
|
uid="uid://1jlb3rvjl2o"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_soffit.png-20eed9b10c026b621e80aa7dcbfa7a76.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_soffit.png-f1aaec074ec3dbc3c428e91306fcf287.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_soffit.png"
|
source_file="res://Young_2077 (1)_soffit.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_soffit.png-20eed9b10c026b621e80aa7dcbfa7a76.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_soffit.png-f1aaec074ec3dbc3c428e91306fcf287.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bp74jds8n4ce8"
|
uid="uid://dslbplrpwmwej"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_street.png-d6fec24cdd742f3d7bb7390de10ed9a8.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_street.png-46481572a68864f4f8a0820a67cf2e16.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_street.png"
|
source_file="res://Young_2077 (1)_street.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_street.png-d6fec24cdd742f3d7bb7390de10ed9a8.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_street.png-46481572a68864f4f8a0820a67cf2e16.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://bimksgdbf1toc"
|
uid="uid://cults08a61iu7"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_street_emit.png-3e9ca62bdd797e7f860ab16a042cfdd3.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_street_emit.png-a00266d9a2d0e1c8cb216a578c644665.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_street_emit.png"
|
source_file="res://Young_2077 (1)_street_emit.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_street_emit.png-3e9ca62bdd797e7f860ab16a042cfdd3.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_street_emit.png-a00266d9a2d0e1c8cb216a578c644665.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://clrnbwgdfs57j"
|
uid="uid://cml82bakt433y"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_tread.png-441a0e32e9847091495aa6d16b8aeec8.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_tread.png-715f80259b81e56ddaa7c4364d34d438.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_tread.png"
|
source_file="res://Young_2077 (1)_tread.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_tread.png-441a0e32e9847091495aa6d16b8aeec8.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_tread.png-715f80259b81e56ddaa7c4364d34d438.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
@@ -2,8 +2,8 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://dqkp7k533fddb"
|
uid="uid://i4aixbbct0ip"
|
||||||
path.s3tc="res://.godot/imported/Young_2077_yard.png-45f15ec3da2cd2ee01e105cea210a6cc.s3tc.ctex"
|
path.s3tc="res://.godot/imported/Young_2077 (1)_yard.png-9dcf0e6e0594004df5f01dde2e907c7c.s3tc.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"imported_formats": ["s3tc_bptc"],
|
"imported_formats": ["s3tc_bptc"],
|
||||||
"vram_texture": true
|
"vram_texture": true
|
||||||
@@ -14,8 +14,8 @@ generator_parameters={
|
|||||||
|
|
||||||
[deps]
|
[deps]
|
||||||
|
|
||||||
source_file="res://Young_2077_yard.png"
|
source_file="res://Young_2077 (1)_yard.png"
|
||||||
dest_files=["res://.godot/imported/Young_2077_yard.png-45f15ec3da2cd2ee01e105cea210a6cc.s3tc.ctex"]
|
dest_files=["res://.godot/imported/Young_2077 (1)_yard.png-9dcf0e6e0594004df5f01dde2e907c7c.s3tc.ctex"]
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
|
|
||||||
Binary file not shown.
@@ -0,0 +1,44 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cef1xfq366mja"
|
||||||
|
path.s3tc="res://.godot/imported/Young_2077 (1)_yardfloor.png-6dd22cb265ffb07f4e220e6d953a36fc.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
generator_parameters={
|
||||||
|
"md5": "a53d8efefa9742a8c85d3920999234da"
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://Young_2077 (1)_yardfloor.png"
|
||||||
|
dest_files=["res://.godot/imported/Young_2077 (1)_yardfloor.png-6dd22cb265ffb07f4e220e6d953a36fc.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
LFS
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -1,44 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="texture"
|
|
||||||
type="CompressedTexture2D"
|
|
||||||
uid="uid://6vsodm2wgqha"
|
|
||||||
path.s3tc="res://.godot/imported/Young_2077_plate.png-a671f10c81a24b0ce917c36a71378e17.s3tc.ctex"
|
|
||||||
metadata={
|
|
||||||
"imported_formats": ["s3tc_bptc"],
|
|
||||||
"vram_texture": true
|
|
||||||
}
|
|
||||||
generator_parameters={
|
|
||||||
"md5": "b69b538b9646c2643dd3a44e989afe6b"
|
|
||||||
}
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://Young_2077_plate.png"
|
|
||||||
dest_files=["res://.godot/imported/Young_2077_plate.png-a671f10c81a24b0ce917c36a71378e17.s3tc.ctex"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
compress/mode=2
|
|
||||||
compress/high_quality=false
|
|
||||||
compress/lossy_quality=0.7
|
|
||||||
compress/uastc_level=0
|
|
||||||
compress/rdo_quality_loss=0.0
|
|
||||||
compress/hdr_compression=1
|
|
||||||
compress/normal_map=0
|
|
||||||
compress/channel_pack=0
|
|
||||||
mipmaps/generate=true
|
|
||||||
mipmaps/limit=-1
|
|
||||||
roughness/mode=0
|
|
||||||
roughness/src_normal=""
|
|
||||||
process/channel_remap/red=0
|
|
||||||
process/channel_remap/green=1
|
|
||||||
process/channel_remap/blue=2
|
|
||||||
process/channel_remap/alpha=3
|
|
||||||
process/fix_alpha_border=true
|
|
||||||
process/premult_alpha=false
|
|
||||||
process/normal_map_invert_y=false
|
|
||||||
process/hdr_as_srgb=false
|
|
||||||
process/hdr_clamp_exposure=false
|
|
||||||
process/size_limit=0
|
|
||||||
detect_3d/compress_to=0
|
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[gd_scene format=3 uid="uid://c1kfhlrmg2djl"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dgtcs2yl15jl3" path="res://planets_whatnot/SM_Saturn.glb" id="1_i5hrf"]
|
||||||
|
|
||||||
|
[node name="Node3D" type="Node3D" unique_id=480200195]
|
||||||
|
|
||||||
|
[node name="SM_Saturn2" parent="." unique_id=1887248500 instance=ExtResource("1_i5hrf")]
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[gd_scene format=3 uid="uid://beqqptwylaqc8"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://c6piu2kmiqwlb" path="res://planets_whatnot/sun.glb" id="1_iveel"]
|
||||||
|
|
||||||
|
[node name="Node3D" type="Node3D" unique_id=817764565]
|
||||||
|
|
||||||
|
[node name="sun" parent="." unique_id=1468497573 instance=ExtResource("1_iveel")]
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
[gd_scene format=3 uid="uid://cv1uijj3b6cbw"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://sy53rgptcuup" path="res://planets_whatnot/SM_Uranus.glb" id="1_8q3j1"]
|
||||||
|
|
||||||
|
[node name="Node3D" type="Node3D" unique_id=1605047630]
|
||||||
|
|
||||||
|
[node name="SM_Uranus2" parent="." unique_id=1482713817 instance=ExtResource("1_8q3j1")]
|
||||||
Reference in New Issue
Block a user