meow
This commit is contained in:
parent
1e233d40cf
commit
4f4e703886
11 changed files with 145 additions and 6 deletions
15
games/cam_follow.gd
Normal file
15
games/cam_follow.gd
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
extends Camera2D
|
||||
class_name CamFollow
|
||||
|
||||
@export var target : Node2D
|
||||
@export var following : bool = true
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
if(following):
|
||||
global_position = target.global_position
|
||||
1
games/cam_follow.gd.uid
Normal file
1
games/cam_follow.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://c4vewqfmgu8ph
|
||||
|
|
@ -4,6 +4,9 @@ const offset_multiplier : float = 2
|
|||
var float_offset : float
|
||||
var starting_y : float
|
||||
var elapsed : float
|
||||
var realness : float = 0
|
||||
var becoming_real : bool = false
|
||||
@export var collider : CollisionShape2D
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
|
|
@ -15,3 +18,17 @@ func _process(delta: float) -> void:
|
|||
elapsed += delta
|
||||
float_offset = sin(elapsed * offset_multiplier)
|
||||
position.y = starting_y + float_offset
|
||||
collider.disabled = realness < 0.1
|
||||
modulate = Color(1,1,1,realness)
|
||||
if(becoming_real):
|
||||
realness = clampf(realness + delta, 0 , 1)
|
||||
else:
|
||||
realness = clampf(realness - delta, 0 , 1)
|
||||
#if(Input.is_action_just_pressed("ui_left")):
|
||||
#becoming_real = !becoming_real
|
||||
|
||||
func fade_out():
|
||||
becoming_real = false
|
||||
|
||||
func fade_in():
|
||||
becoming_real = true
|
||||
|
|
|
|||
|
|
@ -6,8 +6,9 @@
|
|||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_x2rtd"]
|
||||
size = Vector2(96, 8)
|
||||
|
||||
[node name="LabPlatformer" type="AnimatableBody2D"]
|
||||
[node name="LabPlatformer" type="AnimatableBody2D" node_paths=PackedStringArray("collider")]
|
||||
script = ExtResource("1_y0tou")
|
||||
collider = NodePath("CollisionShape2D")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
scale = Vector2(2, 2)
|
||||
|
|
|
|||
|
|
@ -1,9 +1,11 @@
|
|||
[gd_scene load_steps=11 format=4 uid="uid://ckbyiwy0dxbsd"]
|
||||
[gd_scene load_steps=15 format=4 uid="uid://ckbyiwy0dxbsd"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dqyddqx8xm0gw" path="res://games/platformer/player.gd" id="1_1wj3w"]
|
||||
[ext_resource type="Texture2D" uid="uid://diilj7xuttpqu" path="res://icon.svg" id="1_oyf6i"]
|
||||
[ext_resource type="Texture2D" uid="uid://g5arxk4po7kw" path="res://sprites/platformer_lab_tile.png" id="3_84mot"]
|
||||
[ext_resource type="PackedScene" uid="uid://q3wdnawp7n63" path="res://games/platformer/lab_platform.tscn" id="4_w58m1"]
|
||||
[ext_resource type="Script" uid="uid://43jxroyergh0" path="res://games/platformer/platformerCam.gd" id="5_x2rtd"]
|
||||
[ext_resource type="Texture2D" uid="uid://dyjxtuapxfiip" path="res://sprites/box.png" id="6_02uuf"]
|
||||
|
||||
[sub_resource type="Gradient" id="Gradient_1wj3w"]
|
||||
offsets = PackedFloat32Array(0.0209205, 1)
|
||||
|
|
@ -11,11 +13,16 @@ colors = PackedColorArray(0.241156, 0.241156, 0.241156, 1, 0.462291, 0.462291, 0
|
|||
|
||||
[sub_resource type="GradientTexture2D" id="GradientTexture2D_84mot"]
|
||||
gradient = SubResource("Gradient_1wj3w")
|
||||
width = 300
|
||||
height = 180
|
||||
fill_from = Vector2(1, 1)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_oyf6i"]
|
||||
size = Vector2(32, 32)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_02uuf"]
|
||||
size = Vector2(32, 32)
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_1wj3w"]
|
||||
size = Vector2(608, 46)
|
||||
|
||||
|
|
@ -28,18 +35,28 @@ texture = ExtResource("3_84mot")
|
|||
physics_layer_0/collision_layer = 1
|
||||
sources/0 = SubResource("TileSetAtlasSource_w58m1")
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_86tx6"]
|
||||
size = Vector2(32, 32)
|
||||
|
||||
[node name="Platformer" type="Node"]
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="."]
|
||||
[node name="Parallax2D" type="Parallax2D" parent="."]
|
||||
scroll_scale = Vector2(0, 0)
|
||||
|
||||
[node name="TextureRect" type="TextureRect" parent="Parallax2D"]
|
||||
z_index = -6
|
||||
anchors_preset = 15
|
||||
anchor_right = 1.0
|
||||
anchor_bottom = 1.0
|
||||
offset_right = 320.0
|
||||
offset_bottom = 180.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
scale = Vector2(2, 2)
|
||||
texture = SubResource("GradientTexture2D_84mot")
|
||||
|
||||
[node name="Player" type="CharacterBody2D" parent="."]
|
||||
position = Vector2(124, 155)
|
||||
position = Vector2(-976, 272)
|
||||
script = ExtResource("1_1wj3w")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Player"]
|
||||
|
|
@ -49,6 +66,12 @@ texture = ExtResource("1_oyf6i")
|
|||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Player"]
|
||||
shape = SubResource("RectangleShape2D_oyf6i")
|
||||
|
||||
[node name="hitbox" type="Area2D" parent="Player"]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Player/hitbox"]
|
||||
shape = SubResource("RectangleShape2D_02uuf")
|
||||
debug_color = Color(5.29438e-07, 0.629247, 0.48448, 0.42)
|
||||
|
||||
[node name="StaticBody2D" type="StaticBody2D" parent="."]
|
||||
position = Vector2(319, 344)
|
||||
|
||||
|
|
@ -57,7 +80,7 @@ shape = SubResource("RectangleShape2D_1wj3w")
|
|||
|
||||
[node name="TileMapLayer" type="TileMapLayer" parent="."]
|
||||
scale = Vector2(2, 2)
|
||||
tile_map_data = PackedByteArray("AAAAAAkAAAAAAAAAAAABAAkAAAAAAAAAAAACAAkAAAAAAAAAAAADAAkAAAAAAAAAAAAEAAkAAAAAAAAAAAAFAAkAAAAAAAAAAAAGAAkAAAAAAAAAAAAHAAkAAAAAAAAAAAAIAAkAAAAAAAAAAAAJAAkAAAAAAAAAAAAKAAkAAAAAAAAAAAALAAkAAAAAAAAAAAAMAAkAAAAAAAAAAAANAAkAAAAAAAAAAAAOAAkAAAAAAAAAAAAPAAkAAAAAAAAAAAAQAAkAAAAAAAAAAAARAAkAAAAAAAAAAAASAAkAAAAAAAAAAAATAAkAAAAAAAAAAAATAAoAAAAAAAAAAAATAAsAAAAAAAAAAAASAAsAAAAAAAAAAAARAAsAAAAAAAAAAAAQAAsAAAAAAAAAAAAPAAsAAAAAAAAAAAAOAAsAAAAAAAAAAAANAAsAAAAAAAAAAAAMAAsAAAAAAAAAAAALAAsAAAAAAAAAAAAKAAsAAAAAAAAAAAAJAAsAAAAAAAAAAAAIAAsAAAAAAAAAAAAHAAsAAAAAAAAAAAAGAAsAAAAAAAAAAAAFAAsAAAAAAAAAAAAEAAsAAAAAAAAAAAADAAsAAAAAAAAAAAACAAsAAAAAAAAAAAABAAsAAAAAAAAAAAABAAoAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAsAAAAAAAAAAAACAAoAAAAAAAAAAAADAAoAAAAAAAAAAAAEAAoAAAAAAAAAAAAFAAoAAAAAAAAAAAAGAAoAAAAAAAAAAAAHAAoAAAAAAAAAAAAIAAoAAAAAAAAAAAAJAAoAAAAAAAAAAAAKAAoAAAAAAAAAAAALAAoAAAAAAAAAAAAMAAoAAAAAAAAAAAANAAoAAAAAAAAAAAAOAAoAAAAAAAAAAAAPAAoAAAAAAAAAAAAQAAoAAAAAAAAAAAARAAoAAAAAAAAAAAASAAoAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAcAAAAAAAAAAAAAAAYAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAJAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAANAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAARAAAAAAAAAAAAAAASAAAAAAAAAAAAAAATAAAAAAAAAAAAAAATAAEAAAAAAAAAAAATAAIAAAAAAAAAAAATAAMAAAAAAAAAAAATAAQAAAAAAAAAAAATAAUAAAAAAAAAAAATAAYAAAAAAAAAAAATAAcAAAAAAAAAAAATAAgAAAAAAAAAAAA=")
|
||||
tile_map_data = PackedByteArray("AAAAAAkAAAAAAAAAAAABAAkAAAAAAAAAAAACAAkAAAAAAAAAAAADAAkAAAAAAAAAAAAEAAkAAAAAAAAAAAAFAAkAAAAAAAAAAAAGAAkAAAAAAAAAAAAHAAkAAAAAAAAAAAAIAAkAAAAAAAAAAAAJAAkAAAAAAAAAAAAKAAkAAAAAAAAAAAALAAkAAAAAAAAAAAAMAAkAAAAAAAAAAAANAAkAAAAAAAAAAAAOAAkAAAAAAAAAAAAPAAkAAAAAAAAAAAAQAAkAAAAAAAAAAAARAAkAAAAAAAAAAAASAAkAAAAAAAAAAAATAAkAAAAAAAAAAAATAAoAAAAAAAAAAAATAAsAAAAAAAAAAAASAAsAAAAAAAAAAAARAAsAAAAAAAAAAAAQAAsAAAAAAAAAAAAPAAsAAAAAAAAAAAAOAAsAAAAAAAAAAAANAAsAAAAAAAAAAAAMAAsAAAAAAAAAAAALAAsAAAAAAAAAAAAKAAsAAAAAAAAAAAAJAAsAAAAAAAAAAAAIAAsAAAAAAAAAAAAHAAsAAAAAAAAAAAAGAAsAAAAAAAAAAAAFAAsAAAAAAAAAAAAEAAsAAAAAAAAAAAADAAsAAAAAAAAAAAACAAsAAAAAAAAAAAABAAsAAAAAAAAAAAABAAoAAAAAAAAAAAAAAAoAAAAAAAAAAAAAAAsAAAAAAAAAAAACAAoAAAAAAAAAAAADAAoAAAAAAAAAAAAEAAoAAAAAAAAAAAAFAAoAAAAAAAAAAAAGAAoAAAAAAAAAAAAHAAoAAAAAAAAAAAAIAAoAAAAAAAAAAAAJAAoAAAAAAAAAAAAKAAoAAAAAAAAAAAALAAoAAAAAAAAAAAAMAAoAAAAAAAAAAAANAAoAAAAAAAAAAAAOAAoAAAAAAAAAAAAPAAoAAAAAAAAAAAAQAAoAAAAAAAAAAAARAAoAAAAAAAAAAAASAAoAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAACAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAGAAAAAAAAAAAAAAAHAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAJAAAAAAAAAAAAAAAKAAAAAAAAAAAAAAALAAAAAAAAAAAAAAAMAAAAAAAAAAAAAAANAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAPAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAARAAAAAAAAAAAAAAASAAAAAAAAAAAAAAATAAAAAAAAAAAAAAATAAEAAAAAAAAAAAATAAIAAAAAAAAAAAATAAMAAAAAAAAAAAATAAQAAAAAAAAAAAATAAUAAAAAAAAAAAD//wkAAAAAAAAAAAD+/wkAAAAAAAAAAAD9/wkAAAAAAAAAAAD8/wkAAAAAAAAAAAD7/wkAAAAAAAAAAAD6/wkAAAAAAAAAAAD5/wkAAAAAAAAAAAD4/wkAAAAAAAAAAAD3/wkAAAAAAAAAAAD2/wkAAAAAAAAAAAD1/wkAAAAAAAAAAAD0/wkAAAAAAAAAAADz/wkAAAAAAAAAAADy/wkAAAAAAAAAAADx/wkAAAAAAAAAAAAUAAkAAAAAAAAAAAAVAAkAAAAAAAAAAAAWAAkAAAAAAAAAAAAXAAkAAAAAAAAAAAAYAAkAAAAAAAAAAAAZAAkAAAAAAAAAAAAaAAkAAAAAAAAAAAAbAAkAAAAAAAAAAAAcAAkAAAAAAAAAAAAdAAkAAAAAAAAAAAAeAAkAAAAAAAAAAAAfAAkAAAAAAAAAAADw/wkAAAAAAAAAAADv/wkAAAAAAAAAAADu/wkAAAAAAAAAAADt/wkAAAAAAAAAAADs/wkAAAAAAAAAAADr/wkAAAAAAAAAAADq/wkAAAAAAAAAAADp/wkAAAAAAAAAAADo/wkAAAAAAAAAAADn/wkAAAAAAAAAAADm/wkAAAAAAAAAAADl/wkAAAAAAAAAAADk/wkAAAAAAAAAAADj/wkAAAAAAAAAAADi/wkAAAAAAAAAAADh/wkAAAAAAAAAAADg/wkAAAAAAAAAAADf/wkAAAAAAAAAAAD//wMAAAAAAAAAAAD+/wMAAAAAAAAAAAD9/wMAAAAAAAAAAAD8/wMAAAAAAAAAAAD7/wMAAAAAAAAAAAD6/wMAAAAAAAAAAAD5/wMAAAAAAAAAAAD4/wMAAAAAAAAAAAD3/wMAAAAAAAAAAAD2/wMAAAAAAAAAAAD1/wMAAAAAAAAAAAD0/wMAAAAAAAAAAADz/wMAAAAAAAAAAADy/wMAAAAAAAAAAADx/wMAAAAAAAAAAADw/wMAAAAAAAAAAADv/wMAAAAAAAAAAADu/wMAAAAAAAAAAADt/wMAAAAAAAAAAADs/wMAAAAAAAAAAADr/wMAAAAAAAAAAADq/wMAAAAAAAAAAADp/wMAAAAAAAAAAADo/wMAAAAAAAAAAADn/wMAAAAAAAAAAADm/wMAAAAAAAAAAADl/wMAAAAAAAAAAADk/wMAAAAAAAAAAADj/wMAAAAAAAAAAADi/wMAAAAAAAAAAADh/wMAAAAAAAAAAADg/wMAAAAAAAAAAADf/wMAAAAAAAAAAAAUAAMAAAAAAAAAAAAVAAMAAAAAAAAAAAAWAAMAAAAAAAAAAAAXAAMAAAAAAAAAAAAYAAMAAAAAAAAAAAAZAAMAAAAAAAAAAAAaAAMAAAAAAAAAAAAbAAMAAAAAAAAAAAAcAAMAAAAAAAAAAAAdAAMAAAAAAAAAAAAeAAMAAAAAAAAAAAAfAAMAAAAAAAAAAAA=")
|
||||
tile_set = SubResource("TileSet_x2rtd")
|
||||
|
||||
[node name="LabPlatformer" parent="." instance=ExtResource("4_w58m1")]
|
||||
|
|
@ -71,3 +94,20 @@ position = Vector2(368, 112)
|
|||
|
||||
[node name="LabPlatformer4" parent="." instance=ExtResource("4_w58m1")]
|
||||
position = Vector2(240, 112)
|
||||
|
||||
[node name="Camera2D" type="Camera2D" parent="." node_paths=PackedStringArray("target")]
|
||||
position = Vector2(-976, 180)
|
||||
position_smoothing_enabled = true
|
||||
script = ExtResource("5_x2rtd")
|
||||
target = NodePath("../Player")
|
||||
|
||||
[node name="Box" type="Area2D" parent="."]
|
||||
position = Vector2(-672, 272)
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Box"]
|
||||
texture = ExtResource("6_02uuf")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Box"]
|
||||
shape = SubResource("RectangleShape2D_86tx6")
|
||||
|
||||
[connection signal="area_entered" from="Player/hitbox" to="Player" method="_on_hitbox_area_entered"]
|
||||
|
|
|
|||
23
games/platformer/platformerCam.gd
Normal file
23
games/platformer/platformerCam.gd
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
extends Camera2D
|
||||
|
||||
@export var target : Node2D
|
||||
@export var following : bool = true
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready() -> void:
|
||||
pass # Replace with function body.
|
||||
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta: float) -> void:
|
||||
if(following):
|
||||
global_position.x = target.global_position.x
|
||||
if(Input.is_action_just_pressed("ui_right")):
|
||||
start_arena_cam()
|
||||
pass
|
||||
|
||||
func start_arena_cam():
|
||||
print("weh!")
|
||||
following = false
|
||||
position = Vector2(320,180)
|
||||
#offset = Vector2(0,0)
|
||||
1
games/platformer/platformerCam.gd.uid
Normal file
1
games/platformer/platformerCam.gd.uid
Normal file
|
|
@ -0,0 +1 @@
|
|||
uid://43jxroyergh0
|
||||
|
|
@ -5,7 +5,7 @@ extends CharacterBody2D
|
|||
@export var JUMP_VELOCITY = -450.0
|
||||
|
||||
|
||||
func _physics_process(delta: float) -> void:
|
||||
func _process(delta: float) -> void:
|
||||
# Add the gravity.
|
||||
if not is_on_floor():
|
||||
velocity += get_gravity() * delta
|
||||
|
|
@ -23,3 +23,10 @@ func _physics_process(delta: float) -> void:
|
|||
velocity.x = move_toward(velocity.x, 0, SPEED)
|
||||
|
||||
move_and_slide()
|
||||
|
||||
|
||||
func _on_hitbox_area_entered(area: Area2D) -> void:
|
||||
#box event
|
||||
#laser event
|
||||
#sticky tape event
|
||||
pass # Replace with function body.
|
||||
|
|
|
|||
BIN
sprites/box.pdn
Normal file
BIN
sprites/box.pdn
Normal file
Binary file not shown.
BIN
sprites/box.png
Normal file
BIN
sprites/box.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 439 B |
34
sprites/box.png.import
Normal file
34
sprites/box.png.import
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dyjxtuapxfiip"
|
||||
path="res://.godot/imported/box.png-88e8c9a9152bfabd2b270e3db2186223.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://sprites/box.png"
|
||||
dest_files=["res://.godot/imported/box.png-88e8c9a9152bfabd2b270e3db2186223.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/hdr_compression=1
|
||||
compress/normal_map=0
|
||||
compress/channel_pack=0
|
||||
mipmaps/generate=false
|
||||
mipmaps/limit=-1
|
||||
roughness/mode=0
|
||||
roughness/src_normal=""
|
||||
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
|
||||
Loading…
Add table
Add a link
Reference in a new issue