Combinding code

This commit is contained in:
Kristofers Solo 2021-11-02 13:42:55 +02:00
parent 97c297f3b0
commit b8c3c30a3b
40 changed files with 897 additions and 2 deletions

7
Game/default_env.tres Normal file
View File

@ -0,0 +1,7 @@
[gd_resource type="Environment" load_steps=2 format=2]
[sub_resource type="ProceduralSky" id=1]
[resource]
background_mode = 2
background_sky = SubResource( 1 )

BIN
Game/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

34
Game/icon.png.import Normal file
View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://icon.png"
dest_files=[ "res://.import/icon.png-487276ed1e3a0c39cad0279d744ee560.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

74
Game/project.godot Normal file
View File

@ -0,0 +1,74 @@
; Engine configuration file.
; It's best edited using the editor UI and not directly,
; since the parameters that go here are not all obvious.
;
; Format:
; [section] ; section goes between []
; param=value ; assign values to parameters
config_version=4
[application]
config/name="Game"
run/main_scene="res://source/levels/trinity_site/trinity-site-level.tscn"
config/icon="res://icon.png"
[display]
window/size/width=1920
window/size/height=1080
window/size/test_width=1024
window/size/test_height=600
window/stretch/mode="2d"
[input]
input_right={
"deadzone": 0.5,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":68,"unicode":0,"echo":false,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777233,"unicode":0,"echo":false,"script":null)
]
}
input_left={
"deadzone": 0.5,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":65,"unicode":0,"echo":false,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777231,"unicode":0,"echo":false,"script":null)
]
}
input_up={
"deadzone": 0.49,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":87,"unicode":0,"echo":false,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777232,"unicode":0,"echo":false,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":32,"unicode":0,"echo":false,"script":null)
]
}
input_down={
"deadzone": 0.5,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":83,"unicode":0,"echo":false,"script":null)
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777234,"unicode":0,"echo":false,"script":null)
]
}
input_debug={
"deadzone": 0.5,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":96,"unicode":0,"echo":false,"script":null)
]
}
input_enter={
"deadzone": 0.5,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777221,"unicode":0,"echo":false,"script":null)
]
}
input_shift={
"deadzone": 0.5,
"events": [ Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"alt":false,"shift":false,"control":false,"meta":false,"command":false,"pressed":false,"scancode":16777237,"unicode":0,"echo":false,"script":null)
]
}
[physics]
common/enable_pause_aware_picking=true
[rendering]
environment/default_environment="res://default_env.tres"

View File

@ -0,0 +1,148 @@
extends KinematicBody2D
# Instance of data pre-processors
var VDIR_preset_pre_processor_instance = preload("res://source/assets/scripts/pre-processors/vdir_pre-processor.gd").new()
var UIN_preset_pre_processor_instance = preload("res://source/assets/scripts/pre-processors/uin_pre-processor.gd").new()
# Local class constants
# Local class variables
var VDIR = {}
var user_input = {}
var user_state = {}
var dimensions = {}
var gravityVector = Vector2(0,0)
var movementVector = Vector2(0,0)
var movementSpeed = 0
var maxMovementSpeed = 60
var accelerationSpeed = 3.5
var deccelerationSpeed = 4.25
var jumpState = false
var jumpSpeed = 0
var maxJumpSpeed = 400
var time = 0
var timeOut = 1
var timedOut = true
var movementRight = false
var movementLeft = true
func _ready():
# Allow update process override.
set_process(true)
$"player-animated-sprite".play("idle")
pass
func get_user_state():
# Create a dictionary of all variables that relate to clients' active state.
var user_state = {
"global_position": global_transform.origin
}
return user_state
func get_dimensions():
# Create a dictionary of all (required) sizes in regards to the client.
var dimensions = {
"sprite": {
"width":$"player-sprite".texture.get_width(),
"height":$"player-sprite".texture.get_height(),
"scale":$"player-sprite".scale,
},
"collider": {
"shape":$"player-collider".get_shape(),
"radius":$"player-collider".get_shape().get_radius()
}
}
return dimensions
func process_rotation():
var VDIR_ray_positive_y = VDIR["1"]["1"]["ray"]["position"].y - user_state["global_position"].y
var VDIR_ray_negative_y = VDIR["1"]["2"]["ray"]["position"].y - user_state["global_position"].y
var VDIR_ray_positive_x = VDIR["1"]["1"]["ray"]["position"].x - user_state["global_position"].x
var VDIR_ray_negative_x = VDIR["1"]["2"]["ray"]["position"].x - user_state["global_position"].x
var VDIR_ray_offset = sqrt(VDIR_ray_positive_y * VDIR_ray_positive_y + VDIR_ray_positive_x * VDIR_ray_positive_x) - sqrt(VDIR_ray_negative_y * VDIR_ray_negative_y + VDIR_ray_negative_x * VDIR_ray_negative_x)
if VDIR_ray_offset > 1:
rotation_degrees += VDIR_ray_offset / 10
if VDIR_ray_offset < 1:
rotation_degrees += VDIR_ray_offset / 10
func _process(delta):
user_input = UIN_preset_pre_processor_instance.update()
user_state = get_user_state()
dimensions = get_dimensions()
time += delta
VDIR = VDIR_preset_pre_processor_instance.update(user_state, dimensions)
for vector_type in VDIR:
var v_t = str(vector_type)
for vector in VDIR[v_t]:
var v = str(vector)
if v_t == "1":
var space_state = get_world_2d().direct_space_state
var ray_cast = space_state.intersect_ray((VDIR[v_t][v]["start"] - user_state["global_position"]).rotated(rotation) + user_state["global_position"],(VDIR[v_t][v]["end"] - user_state["global_position"]).rotated(rotation) + user_state["global_position"],[self])
if "position" in ray_cast:
VDIR[v_t][v]["ray"]["position"] = ray_cast.position
VDIR[v_t][v]["ray"]["length"] = sqrt((VDIR[v_t][v]["ray"]["position"].y - user_state["global_position"].y)*(VDIR[v_t][v]["ray"]["position"].y - user_state["global_position"].y)+(VDIR[v_t][v]["ray"]["position"].x - user_state["global_position"].x)*(VDIR[v_t][v]["ray"]["position"].x - user_state["global_position"].x))
VDIR[v_t][v]["ray"]["offset"] = dimensions["collider"]["radius"] - VDIR[v_t][v]["ray"]["length"]
VDIR[v_t][v]["ray"]["collided"] = true
else:
VDIR[v_t][v]["ray"]["position"] = (VDIR[v_t][v]["end"] - user_state["global_position"]).rotated(rotation) + user_state["global_position"]
VDIR[v_t][v]["ray"]["length"] = sqrt((VDIR[v_t][v]["ray"]["position"].y - user_state["global_position"].y)*(VDIR[v_t][v]["ray"]["position"].y - user_state["global_position"].y)+(VDIR[v_t][v]["ray"]["position"].x - user_state["global_position"].x)*(VDIR[v_t][v]["ray"]["position"].x - user_state["global_position"].x))
VDIR[v_t][v]["ray"]["offset"] = dimensions["collider"]["radius"] - VDIR[v_t][v]["ray"]["length"]
VDIR[v_t][v]["ray"]["collided"] = false
update()
process_rotation()
func _physics_process(delta):
if "0" in VDIR:
if VDIR["1"]["0"]["ray"]["length"] - dimensions["collider"]["radius"] > 2 and jumpState == false:
gravityVector = (VDIR["1"]["0"]["ray"]["position"] - user_state["global_position"]).normalized()
elif jumpState == false:
gravityVector = Vector2(0,0)
movementVector = Vector2(0,0)
if user_input["right"] == true:
movementVector = Vector2(1,0)
elif user_input["left"] == true:
movementVector = Vector2(-1,0)
else:
movementVector = Vector2(0,0)
if movementVector.x == 1 and movementRight == false:
movementRight = true
movementLeft = false
$"player-animated-sprite".flip_h = true
elif movementVector.x == -1 and movementLeft == false:
movementLeft = true
movementRight = false
$"player-animated-sprite".flip_h = false
if movementVector != Vector2(0,0) and jumpState == false:
movementSpeed = move_toward(movementSpeed, maxMovementSpeed, accelerationSpeed)
elif movementVector != Vector2(0,0) and jumpState == true:
movementSpeed = move_toward(movementSpeed, maxMovementSpeed * 2, accelerationSpeed)
else:
movementSpeed = move_toward(movementSpeed, 0, deccelerationSpeed)
if timedOut == true and user_input["up"] == true and jumpState == false and VDIR["1"]["0"]["ray"]["length"] - dimensions["collider"]["radius"] < 2:
gravityVector = (VDIR["1"]["0"]["ray"]["position"] - user_state["global_position"]).normalized() * -1
jumpSpeed = 0
jumpState = true
time = 0
if jumpState == true and jumpSpeed < maxJumpSpeed:
rotation_degrees = move_toward(rotation_degrees, 0, accelerationSpeed/10)
jumpSpeed = move_toward(jumpSpeed, maxJumpSpeed, accelerationSpeed * 10)
else:
jumpState = false
jumpSpeed = 100
if user_input["boost"] == true:
maxMovementSpeed = move_toward(maxMovementSpeed,120,accelerationSpeed)
else:
maxMovementSpeed = move_toward(maxMovementSpeed,60,deccelerationSpeed)
if time < timeOut:
timedOut = false
else:
timedOut = true
move_and_slide(gravityVector * jumpSpeed + movementVector.rotated(rotation).normalized() * movementSpeed)
func _draw():
for vector_type in VDIR:
var v_t = str(vector_type)
for vector in VDIR[v_t]:
var v = str(vector)
if v_t == "1":
draw_line(VDIR[v_t][v]["start"] - user_state["global_position"],(VDIR[v_t][v]["ray"]["position"] - user_state["global_position"]).rotated(-rotation),Color(255,255,255,1),1)

View File

@ -0,0 +1,11 @@
extends CollisionShape2D
onready var playerSpriteNAHeight = get_parent().get_child(2).texture.get_height() * get_parent().get_child(2).scale.y
onready var playerSpriteNAWidth = get_parent().get_child(2).texture.get_width() * get_parent().get_child(2).scale.x
func _ready():
var expectedColliderShape = CircleShape2D.new()
set_shape(expectedColliderShape)
var colliderRadius = playerSpriteNAHeight / 2
expectedColliderShape.set_radius(colliderRadius)
pass

View File

@ -0,0 +1,26 @@
extends Node
var inputState = {}
func _init() -> void:
inputState = {
"right": false,
"left": false,
"up": false,
"down": false,
"debug": false,
"enter": false
}
pass
func update():
inputState = {
"right": Input.is_action_pressed("input_right"),
"left": Input.is_action_pressed("input_left"),
"up": Input.is_action_pressed("input_up"),
"down": Input.is_action_pressed("input_down"),
"debug": Input.is_action_pressed("input_debug"),
"boost": Input.is_action_pressed("input_shift"),
"enter": Input.is_action_pressed("input_enter")
}
return inputState

View File

@ -0,0 +1,46 @@
extends Node
var VDIR = {}
func update(userState, userDimensions):
var bSP = 0
var bHO = userDimensions["sprite"]["width"] / 2 * userDimensions["sprite"]["scale"].x
var bVVO = userDimensions["sprite"]["height"] * userDimensions["sprite"]["scale"].y
var spHO = userDimensions["collider"]["radius"]
VDIR = {
"0": {
"0": {
"start": Vector2(bSP, bSP),
"end": Vector2(bSP, bVVO),
"ray": {"position": Vector2(bSP, bVVO), "length": bVVO, "offset": bVVO - spHO, "collided": false}
},
"1": {
"start": Vector2(spHO, bSP),
"end": Vector2(spHO, bVVO),
"ray": {"position": Vector2(spHO, bVVO), "length": bVVO, "offset": bVVO - spHO, "collided": false}
},
"2": {
"start": Vector2(-spHO, bSP),
"end": Vector2(-spHO, bVVO),
"ray": {"position": Vector2(-spHO, bVVO), "length": bVVO, "offset": bVVO - spHO, "collided": false}
}
},
"1": {
"0": {
"start": Vector2(bSP, bSP) + userState["global_position"],
"end": Vector2(bSP, bVVO) + userState["global_position"],
"ray": {"position": Vector2(bSP, bVVO) + userState["global_position"], "length": bVVO, "offset": bVVO - spHO, "collided": false}
},
"1": {
"start": Vector2(spHO, bSP) + userState["global_position"],
"end": Vector2(spHO, bVVO) + userState["global_position"],
"ray": {"position": Vector2(spHO, bVVO) + userState["global_position"], "length": bVVO, "offset": bVVO - spHO, "collided": false}
},
"2": {
"start": Vector2(-spHO, bSP) + userState["global_position"],
"end": Vector2(-spHO, bVVO) + userState["global_position"],
"ray": {"position": Vector2(-spHO, bVVO) + userState["global_position"], "length": bVVO, "offset": bVVO - spHO, "collided": false}
}
}
}
return VDIR

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 1.png-b558478550e6d1936c72122630064deb.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 1.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 1.png-b558478550e6d1936c72122630064deb.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 10.png-ec522b709593936611c719cfe2a608d4.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 10.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 10.png-ec522b709593936611c719cfe2a608d4.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 11.png-c9bbf2ef2f59da399e890ce817f55c11.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 11.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 11.png-c9bbf2ef2f59da399e890ce817f55c11.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 2.png-94999a82da3232e7d92c3f9ee67be815.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 2.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 2.png-94999a82da3232e7d92c3f9ee67be815.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 3.png-8aa6c0a56fbb388157d4fd8c060050bb.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 3.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 3.png-8aa6c0a56fbb388157d4fd8c060050bb.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 4.png-ca524bffa1dad3792710ef47a48de61e.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 4.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 4.png-ca524bffa1dad3792710ef47a48de61e.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 5.png-085ea2af6c26ff900dcf762cee999823.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 5.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 5.png-085ea2af6c26ff900dcf762cee999823.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 6.png-5129eec9d861ea14e3c82822abab25c9.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 6.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 6.png-5129eec9d861ea14e3c82822abab25c9.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 7.png-72e5dcffd49d5f69c8e378d0b877938a.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 7.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 7.png-72e5dcffd49d5f69c8e378d0b877938a.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 8.png-55092da9ec8ce8e625504044d2085f5a.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 8.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 8.png-55092da9ec8ce8e625504044d2085f5a.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation 9.png-108d2d665d11cab4daa00a5c845b4c12.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 9.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation 9.png-108d2d665d11cab4daa00a5c845b4c12.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite_idle_animation.png-39699617848bc9a4a118c7fe272d567e.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation.png"
dest_files=[ "res://.import/player_main_body_default_sprite_idle_animation.png-39699617848bc9a4a118c7fe272d567e.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/player_main_body_default_sprite.png-96f9ed57cf6d9efdccb3ecbc4b8cd6ff.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/assets/sprites/character/player/player_main_body_default_sprite.png"
dest_files=[ "res://.import/player_main_body_default_sprite.png-96f9ed57cf6d9efdccb3ecbc4b8cd6ff.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,46 @@
[gd_scene load_steps=18 format=2]
[ext_resource path="res://source/assets/sprites/character/player/player_main_body_default_sprite.png" type="Texture" id=1]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 9.png" type="Texture" id=2]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 11.png" type="Texture" id=3]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 10.png" type="Texture" id=4]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation.png" type="Texture" id=5]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 8.png" type="Texture" id=6]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 4.png" type="Texture" id=7]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 1.png" type="Texture" id=8]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 3.png" type="Texture" id=9]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 5.png" type="Texture" id=10]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 6.png" type="Texture" id=11]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 7.png" type="Texture" id=12]
[ext_resource path="res://source/assets/sprites/character/player/animation/idle/player_main_body_default_sprite_idle_animation 2.png" type="Texture" id=13]
[ext_resource path="res://source/assets/scripts/player-handlers/player-collider-handler.gd" type="Script" id=14]
[ext_resource path="res://source/assets/scripts/player-handlers/player-body-handler.gd" type="Script" id=15]
[sub_resource type="CircleShape2D" id=1]
[sub_resource type="SpriteFrames" id=2]
animations = [ {
"frames": [ ExtResource( 8 ), ExtResource( 13 ), ExtResource( 9 ), ExtResource( 7 ), ExtResource( 10 ), ExtResource( 11 ), ExtResource( 12 ), ExtResource( 6 ), ExtResource( 2 ), ExtResource( 4 ), ExtResource( 3 ), ExtResource( 5 ) ],
"loop": true,
"name": "idle",
"speed": 65.0
} ]
[node name="player-node" type="Node2D"]
[node name="player-body" type="KinematicBody2D" parent="."]
script = ExtResource( 15 )
[node name="player-collider" type="CollisionShape2D" parent="player-body"]
shape = SubResource( 1 )
script = ExtResource( 14 )
[node name="player-animated-sprite" type="AnimatedSprite" parent="player-body"]
scale = Vector2( 0.3, 0.3 )
frames = SubResource( 2 )
animation = "idle"
[node name="player-sprite" type="Sprite" parent="player-body"]
visible = false
scale = Vector2( 0.3, 0.3 )
texture = ExtResource( 1 )

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

View File

@ -0,0 +1,34 @@
[remap]
importer="texture"
type="StreamTexture"
path="res://.import/trinity_site_level_layout-monochrome.png-c5b47a5f1d25029803eac9e832c13411.stex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://source/levels/trinity_site/images/trinity_site_level_layout-monochrome.png"
dest_files=[ "res://.import/trinity_site_level_layout-monochrome.png-c5b47a5f1d25029803eac9e832c13411.stex" ]
[params]
compress/mode=0
compress/lossy_quality=0.7
compress/hdr_mode=0
compress/bptc_ldr=0
compress/normal_map=0
flags/repeat=0
flags/filter=true
flags/mipmaps=false
flags/anisotropic=false
flags/srgb=2
process/fix_alpha_border=true
process/premult_alpha=false
process/HDR_as_SRGB=false
process/invert_color=false
stream=false
size_limit=0
detect_3d=true
svg/scale=1.0

View File

@ -0,0 +1,26 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://source/entities/player/player-node.tscn" type="PackedScene" id=1]
[ext_resource path="res://source/levels/trinity_site/images/trinity_site_level_layout-monochrome.png" type="Texture" id=2]
[node name="trinity-site" type="Node2D"]
[node name="player-node" parent="." instance=ExtResource( 1 )]
position = Vector2( 373.976, 533.394 )
[node name="trinity-site-body" type="StaticBody2D" parent="."]
[node name="trinity_site_level_layout-monochrome" type="Sprite" parent="trinity-site-body"]
position = Vector2( 953.868, 573.156 )
scale = Vector2( 1.49915, 1.42561 )
texture = ExtResource( 2 )
[node name="trinity_site_outer_collider" type="CollisionPolygon2D" parent="trinity-site-body"]
position = Vector2( 2.62201, 1.49829 )
scale = Vector2( 1.84456, 1.84456 )
polygon = PoolVector2Array( 511.775, 1.29255e-07, 508.374, 81.3459, 502, 79.9369, 496.101, 77.9311, 489.258, 74.6276, 482.533, 69.3183, 475.336, 62.4752, 467.903, 57.2839, 459.526, 52.6825, 452.748, 49.4016, 445.163, 46.405, 438.233, 43.8766, 430.086, 42.4719, 423.063, 41.5355, 414.635, 40.88, 406.488, 41.4419, 398.434, 42.8465, 391.318, 44.0639, 384.669, 45.7495, 379.237, 47.716, 373.712, 49.7762, 365.753, 53.7093, 359.666, 57.455, 353.017, 62.1372, 347.867, 66.8194, 342.81, 72.2508, 337.847, 77.2139, 334.101, 82.1771, 329.606, 88.3576, 326.516, 93.3207, 321.74, 98.1902, 317.245, 102.123, 311.345, 106.15, 304.977, 108.866, 296.362, 111.3, 288.964, 112.424, 280.536, 112.05, 272.483, 110.364, 264.336, 108.304, 255.627, 106.525, 247.948, 105.401, 238.397, 104.183, 229.875, 103.903, 222.009, 103.528, 214.986, 103.903, 207.4, 104.183, 200.377, 104.933, 193.916, 105.588, 185.675, 106.806, 178.183, 108.304, 168.819, 110.926, 161.983, 112.986, 154.96, 115.421, 146.532, 118.324, 139.696, 121.695, 132.11, 125.628, 126.304, 129.093, 119.937, 132.745, 112.539, 136.491, 106.826, 140.705, 100.833, 145.574, 94.7464, 150.35, 90.8133, 153.815, 85.6629, 158.029, 81.0743, 162.617, 76.5794, 166.925, 73.1146, 170.577, 68.4324, 175.915, 65.1548, 179.754, 61.5061, 185.562, 56.3556, 193.866, 51.4153, 201.329, 46.0546, 208.582, 42.1655, 216.15, 38.8019, 224.349, 35.3332, 232.127, 32.4952, 239.695, 30.498, 246.002, 28.3958, 254.201, 26.9242, 261.348, 25.5578, 268.075, 24.4015, 274.382, 23.2453, 282.265, 23.2453, 288.887, 22.1942, 297.402, 22.2993, 305.705, 22.6146, 313.168, 23.3504, 322.103, 24.4488, 330.903, 25.1043, 337.552, 26.6026, 345.044, 28.1009, 352.254, 29.9738, 357.686, 31.8467, 363.398, 34.5624, 372.388, 37.559, 379.692, 40.0874, 386.435, 42.9903, 391.96, 46.2679, 398.515, 49.3581, 403.571, 53.8531, 410.782, 57.8798, 416.307, 61.3446, 422.488, 65.9332, 427.825, 72.301, 434.942, 77.2641, 440.186, 84.1938, 447.584, 89.7188, 452.922, 96.7421, 458.447, 103.297, 463.317, 110.227, 468.561, 117.344, 473.243, 125.023, 477.925, 132.421, 481.952, 140.193, 485.417, 147.123, 488.039, 156.3, 491.223, 163.042, 493.564, 171.564, 496.186, 180.46, 498.527, 189.918, 499.931, 198.814, 501.43, 207.898, 502.273, 218.199, 502.928, 226.72, 502.928, 234.586, 502.647, 242.452, 501.711, 248.165, 500.962, 255.904, 499.956, 265.225, 497.832, 275.843, 495.354, 283.978, 493.966, 292.715, 494.529, 301.092, 496.652, 308.525, 499.248, 314.778, 503.259, 320.913, 507.861, 325.397, 513.406, 331.178, 521.901, 337.785, 530.16, 343.448, 535.823, 351.707, 542.43, 359.966, 548.565, 369.523, 554.701, 378, 558.75, 387, 561.625, 396, 563.75, 406.125, 564.75, 418.125, 565.625, 429.125, 564.375, 438, 562.125, 446.875, 559.25, 458, 555.125, 466.25, 550.375, 471.875, 546.5, 477.125, 542.5, 483, 537, 488.875, 533.25, 494.25, 529.875, 500.25, 527.875, 507.5, 526.375, 514.375, 526.375, 520.125, 527, 530.125, 528.875, 539.625, 533.25, 544.25, 537.125, 552, 544, 557.625, 547.875, 565.875, 552.875, 573.125, 556.25, 580.5, 559.625, 588.125, 562.25, 595.875, 563.625, 605.125, 564.875, 613.25, 565.5, 622.875, 565.125, 631.875, 563.625, 641.5, 561.5, 647.5, 560.25, 655.375, 556.625, 662.625, 553, 670, 547.75, 678.625, 540.625, 685.625, 534.875, 691.125, 528.875, 696.625, 520, 701.625, 512.375, 707.375, 506.625, 713.75, 502.125, 723.75, 497.375, 735.458, 494.76, 745.863, 495.206, 757.607, 498.327, 772.918, 501.003, 783.472, 502.192, 794.621, 502.936, 809.04, 503.382, 822.567, 502.936, 834.905, 501.895, 849.621, 498.625, 864.486, 495.354, 874.595, 491.341, 886.487, 485.692, 898.23, 479.3, 912.798, 471.719, 923.946, 463.543, 933.163, 456.854, 943.271, 448.232, 951.298, 440.056, 957.839, 432.029, 968.857, 418.87, 978.034, 403.185, 983.874, 391.672, 989.046, 379.492, 992.383, 369.648, 999.224, 351.627, 1002.23, 337.278, 1003.4, 321.927, 1004.56, 307.911, 1004.4, 296.231, 1003.73, 280.714, 1001.06, 265.864, 998.056, 252.682, 994.385, 239.334, 988.546, 224.65, 982.872, 212.637, 975.865, 199.789, 968.69, 187.275, 960.013, 177.764, 951.337, 167.419, 943.828, 158.075, 934.818, 151.067, 925.141, 144.727, 913.127, 134.883, 900.947, 127.374, 887.932, 120.366, 873.582, 114.86, 859.4, 110.522, 847.052, 107.351, 832.369, 105.683, 817.352, 104.181, 801.167, 103.514, 786.484, 104.515, 772.969, 105.683, 761.122, 108.186, 748.942, 111.857, 741.099, 113.358, 729.757, 111.82, 718.178, 107.489, 706.776, 99.7108, 699.794, 91.4023, 694.225, 82.3867, 684.39, 70.9989, 676.071, 63.0041, 661.343, 53.1236, 650.831, 47.6174, 640.152, 44.2803, 626.804, 41.6106, 614.123, 41.2769, 600.607, 41.6106, 588.594, 43.7797, 576.747, 47.7843, 565.067, 52.623, 558.226, 57.1281, 551.385, 61.6332, 544.377, 67.9737, 539.538, 72.6456, 533.198, 76.9839, 522.686, 80.321, 511.173, 81.6558, 511.775, 1.29255e-07, 1040.9, 1.29255e-07, 1040.9, 585.505, 1.29255e-07, 585.505, 1.29255e-07, 1.29255e-07 )
[node name="CollisionPolygon2D" type="CollisionPolygon2D" parent="trinity-site-body"]
position = Vector2( 0.794176, -14.9406 )
scale = Vector2( 1.86858, 1.83741 )
polygon = PoolVector2Array( 411.392, 250.341, 409.273, 253.255, 403.446, 255.638, 394.971, 258.552, 386.76, 263.055, 380.138, 269.146, 374.576, 276.298, 368.484, 285.568, 365.571, 297.222, 365.041, 307.817, 366.1, 318.147, 371.927, 329.536, 376.96, 336.422, 384.111, 343.309, 394.706, 348.341, 403.446, 351.785, 412.187, 356.552, 414.836, 362.379, 417.749, 372.444, 424.371, 382.774, 429.403, 388.866, 438.144, 395.223, 449.798, 398.931, 461.187, 400.785, 474.96, 401.579, 483.171, 398.666, 490.852, 393.898, 497.739, 389.925, 508.598, 385.952, 519.193, 386.217, 527.668, 389.396, 534.025, 392.574, 544.09, 397.606, 554.685, 400.52, 564.485, 402.109, 577.463, 400.785, 586.204, 396.282, 594.415, 391.779, 601.036, 385.952, 606.599, 378.801, 609.247, 370.325, 613.485, 359.995, 618.782, 353.374, 629.112, 350.99, 639.972, 345.428, 647.388, 338.541, 656.128, 328.741, 660.366, 320.001, 663.28, 307.022, 661.691, 296.693, 659.307, 285.038, 653.536, 274.373, 644.209, 264.114, 633.35, 258.817, 622.132, 254.55, 613.891, 248.982, 609.777, 238.952, 606.069, 229.417, 599.859, 219.36, 587.793, 210.611, 572.166, 204.519, 557.598, 203.725, 544.09, 206.373, 537.734, 209.552, 537.734, 209.552, 531.377, 214.319, 522.901, 218.557, 512.306, 220.411, 505.155, 218.557, 491.117, 212.995, 479.728, 207.698, 471.252, 205.314, 459.333, 203.46, 445.295, 206.109, 433.376, 212.995, 426.755, 218.557, 418.544, 227.298, 414.571, 238.157 )

View File

@ -1,7 +1,7 @@
extends KinematicBody2D
const JUMP_FORCE = 500
const GRAVITY = 500
const JUMP_FORCE = 750
const GRAVITY = 2000
const MAX_SPEED = 5000
const ACCELERATION = 10

View File

@ -15,6 +15,7 @@ onready var tween = $Tween
func _ready():
get_tree().connect("network_peer_connected", self, "_network_peer_connected")
username_text_instance = Global.instance_node_at_location(username_text, PersistentNodes, global_position)
username_text_instance.player_following = self