Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
6860fda89c |
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
@@ -0,0 +1,34 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bivvbepth8ko2"
|
||||
path="res://.godot/imported/bg-1-3.png-149608b6f5f53810a256bf60fdfa8120.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://assets/bg-1-3.png"
|
||||
dest_files=["res://.godot/imported/bg-1-3.png-149608b6f5f53810a256bf60fdfa8120.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
|
||||
+3
-3
@@ -8,7 +8,7 @@ custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="../../../../../home/jonas/Schreibtisch/Export_Mario_Linux/retromario.x86_64"
|
||||
export_path="../../../../../home/jonas/Schreibtisch/Export_Linux/retromario.x86_64"
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
@@ -48,7 +48,7 @@ custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="../../../../../home/jonas/Schreibtisch/Export_Mario_Windows/retromario.exe"
|
||||
export_path="../../../../../home/jonas/Schreibtisch/Export_Windows/retromario.exe"
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
@@ -314,7 +314,7 @@ custom_features=""
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter=""
|
||||
export_path="../../../../../home/jonas/Schreibtisch/Export_Mario_Mac/retromario.zip"
|
||||
export_path="../../../../../home/jonas/Schreibtisch/Export_Mac/retromario.zip"
|
||||
encryption_include_filters=""
|
||||
encryption_exclude_filters=""
|
||||
encrypt_pck=false
|
||||
|
||||
@@ -67,11 +67,6 @@ flower={
|
||||
]
|
||||
}
|
||||
|
||||
[input_devices]
|
||||
|
||||
pointing/emulate_touch_from_mouse=true
|
||||
pointing/emulate_mouse_from_touch=false
|
||||
|
||||
[physics]
|
||||
|
||||
2d/physics_engine="GodotPhysics2D"
|
||||
@@ -81,4 +76,3 @@ pointing/emulate_mouse_from_touch=false
|
||||
|
||||
textures/canvas_textures/default_texture_filter=0
|
||||
textures/vram_compression/import_etc2_astc=true
|
||||
environment/defaults/default_clear_color=Color(1, 1, 1, 1)
|
||||
|
||||
@@ -18,7 +18,7 @@ animations = [{
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_w18em"]
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_aoc4r"]
|
||||
size = Vector2(48, 8)
|
||||
|
||||
[node name="MovePlatform" type="RigidBody2D"]
|
||||
@@ -33,5 +33,5 @@ veloc = Vector2(0, 50)
|
||||
sprite_frames = SubResource("SpriteFrames_hdxpr")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_w18em")
|
||||
shape = SubResource("RectangleShape2D_aoc4r")
|
||||
one_way_collision = true
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://btwegds3up8cn"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dth47lmb44qk8" path="res://assets/items.png" id="1_pvodq"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_c4pt3"]
|
||||
size = Vector2(48, 8)
|
||||
|
||||
[node name="Platform" type="AnimatableBody2D"]
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
z_index = 20
|
||||
texture = ExtResource("1_pvodq")
|
||||
region_enabled = true
|
||||
region_rect = Rect2(63, 38, 48, 8)
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("RectangleShape2D_c4pt3")
|
||||
one_way_collision = true
|
||||
@@ -62,7 +62,7 @@ shape = SubResource("CapsuleShape2D_8406q")
|
||||
[node name="RayCastLeft" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
target_position = Vector2(-8, 0)
|
||||
collision_mask = 17
|
||||
collision_mask = 145
|
||||
|
||||
[node name="RayCastLeft2" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
@@ -77,7 +77,7 @@ collision_mask = 128
|
||||
[node name="RayCastRight" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
target_position = Vector2(8, 0)
|
||||
collision_mask = 17
|
||||
collision_mask = 145
|
||||
|
||||
[node name="RayCastRight2" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
|
||||
@@ -61,7 +61,7 @@ shape = SubResource("CircleShape2D_l4q7u")
|
||||
[node name="RayCastLeft" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
target_position = Vector2(-9, 0)
|
||||
collision_mask = 17
|
||||
collision_mask = 145
|
||||
|
||||
[node name="RayCastLeft2" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
@@ -71,7 +71,7 @@ collision_mask = 2
|
||||
[node name="RayCastRight" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
target_position = Vector2(9, 0)
|
||||
collision_mask = 17
|
||||
collision_mask = 145
|
||||
|
||||
[node name="RayCastRight2" type="RayCast2D" parent="."]
|
||||
position = Vector2(8, -8)
|
||||
|
||||
@@ -39,6 +39,7 @@ can_sleep = false
|
||||
script = ExtResource("1_c103u")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
z_index = 20
|
||||
sprite_frames = SubResource("SpriteFrames_unbxs")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
|
||||
@@ -105,6 +105,7 @@ lock_rotation = true
|
||||
script = ExtResource("1_qo5bm")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
z_index = 20
|
||||
position = Vector2(8, -8)
|
||||
sprite_frames = SubResource("SpriteFrames_s232e")
|
||||
autoplay = "default"
|
||||
|
||||
@@ -21,14 +21,15 @@ anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -288.0
|
||||
offset_top = -36.0
|
||||
offset_right = -80.0
|
||||
offset_bottom = 28.0
|
||||
offset_left = -240.0
|
||||
offset_top = -148.0
|
||||
offset_right = -32.0
|
||||
offset_bottom = -84.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_fonts/font = ExtResource("2_3ebbo")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
disabled = true
|
||||
text = "Level 1"
|
||||
|
||||
[node name="Button_2" type="Button" parent="Control"]
|
||||
@@ -38,15 +39,35 @@ anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = 80.0
|
||||
offset_left = 32.0
|
||||
offset_top = -148.0
|
||||
offset_right = 240.0
|
||||
offset_bottom = -84.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_fonts/font = ExtResource("2_3ebbo")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
disabled = true
|
||||
text = "Level 2"
|
||||
|
||||
[node name="Button_3" type="Button" parent="Control"]
|
||||
layout_mode = 1
|
||||
anchors_preset = 8
|
||||
anchor_left = 0.5
|
||||
anchor_top = 0.5
|
||||
anchor_right = 0.5
|
||||
anchor_bottom = 0.5
|
||||
offset_left = -240.0
|
||||
offset_top = -36.0
|
||||
offset_right = 288.0
|
||||
offset_right = -32.0
|
||||
offset_bottom = 28.0
|
||||
grow_horizontal = 2
|
||||
grow_vertical = 2
|
||||
theme_override_fonts/font = ExtResource("2_3ebbo")
|
||||
theme_override_font_sizes/font_size = 24
|
||||
text = "Level 2"
|
||||
disabled = true
|
||||
text = "Level 3"
|
||||
|
||||
[connection signal="pressed" from="Control/Button_1" to="." method="_on_button_pressed" binds= ["1"]]
|
||||
[connection signal="pressed" from="Control/Button_2" to="." method="_on_button_pressed" binds= ["2"]]
|
||||
[connection signal="pressed" from="Control/Button_3" to="." method="_on_button_pressed" binds= ["3"]]
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
[gd_scene load_steps=20 format=3 uid="uid://dv50be68omp73"]
|
||||
[gd_scene load_steps=21 format=3 uid="uid://dv50be68omp73"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://chrld8oybp4me" path="res://assets/bg-1-1.png" id="1_p04bh"]
|
||||
[ext_resource type="PackedScene" uid="uid://dk1aby88pygtr" path="res://scenes/player.tscn" id="2_j2a2f"]
|
||||
@@ -15,6 +15,7 @@
|
||||
[ext_resource type="Script" path="res://scripts/WorldBoundDown.gd" id="13_je7o8"]
|
||||
[ext_resource type="PackedScene" uid="uid://bm04qp5vgbi10" path="res://scenes/flag.tscn" id="14_ry537"]
|
||||
[ext_resource type="PackedScene" uid="uid://dflvi18e358ek" path="res://scenes/blocks/enimie_barrier.tscn" id="15_ac2kk"]
|
||||
[ext_resource type="PackedScene" uid="uid://bkpny146y0y0e" path="res://scenes/enemies/coopa.tscn" id="16_dfvj4"]
|
||||
|
||||
[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_sdqov"]
|
||||
texture = ExtResource("1_p04bh")
|
||||
@@ -19323,20 +19324,41 @@ position = Vector2(1152, 0)
|
||||
[node name="Gumba6" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(1472, 0)
|
||||
|
||||
[node name="Gumba7" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(1648, 0)
|
||||
|
||||
[node name="Gumba8" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(2672, 0)
|
||||
|
||||
[node name="Gumba9" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(2752, 0)
|
||||
|
||||
[node name="Gumba10" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(576, 0)
|
||||
|
||||
[node name="coopa" parent="Enemies" instance=ExtResource("16_dfvj4")]
|
||||
position = Vector2(1632, 0)
|
||||
|
||||
[node name="Gumba7" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(1760, 0)
|
||||
|
||||
[node name="Gumba11" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(1792, 0)
|
||||
|
||||
[node name="Gumba12" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(1904, 0)
|
||||
|
||||
[node name="Gumba13" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(1936, 0)
|
||||
|
||||
[node name="Gumba14" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(2016, 0)
|
||||
|
||||
[node name="Gumba15" parent="Enemies" instance=ExtResource("8_6vd8t")]
|
||||
position = Vector2(2048, 0)
|
||||
|
||||
[node name="Pipes" type="Node" parent="."]
|
||||
|
||||
[node name="pipe" parent="Pipes" instance=ExtResource("9_sfjeq")]
|
||||
position = Vector2(832, -64)
|
||||
target = Vector2(800, 224)
|
||||
target = Vector2(640, 112)
|
||||
|
||||
[node name="pipe2" parent="Pipes" instance=ExtResource("9_sfjeq")]
|
||||
position = Vector2(816, 240)
|
||||
@@ -19422,6 +19444,7 @@ text = "120"
|
||||
|
||||
[node name="Flag" parent="." instance=ExtResource("14_ry537")]
|
||||
load_level = "level_0"
|
||||
level_score = 2
|
||||
|
||||
[node name="StaticBody2D" parent="." instance=ExtResource("15_ac2kk")]
|
||||
position = Vector2(1040, 0)
|
||||
|
||||
+50
-11
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+6
-1
@@ -274,7 +274,7 @@ limit_bottom = 32
|
||||
|
||||
[node name="ColorRect" type="ColorRect" parent="Camera2D"]
|
||||
visible = false
|
||||
z_index = 10
|
||||
z_index = 50
|
||||
offset_left = -3995.0
|
||||
offset_top = -1678.0
|
||||
offset_right = 3965.0
|
||||
@@ -283,6 +283,7 @@ mouse_filter = 1
|
||||
color = Color(0, 0, 0, 1)
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
z_index = 25
|
||||
position = Vector2(0, 2)
|
||||
sprite_frames = SubResource("SpriteFrames_l5s58")
|
||||
animation = &"run_flower"
|
||||
@@ -367,9 +368,13 @@ libraries = {
|
||||
"": SubResource("AnimationLibrary_uuoiq")
|
||||
}
|
||||
|
||||
[node name="timer_fire" type="Timer" parent="."]
|
||||
one_shot = true
|
||||
|
||||
[connection signal="area_entered" from="pipedetector_ground" to="." method="_on_pipedetector_area_entered"]
|
||||
[connection signal="area_exited" from="pipedetector_ground" to="." method="_on_pipedetector_area_exited"]
|
||||
[connection signal="area_entered" from="pipedetector_right" to="." method="_on_pipedetector_right_area_entered"]
|
||||
[connection signal="area_exited" from="pipedetector_right" to="." method="_on_pipedetector_right_area_exited"]
|
||||
[connection signal="timeout" from="pipe_timer" to="." method="_on_pipe_timer_timeout"]
|
||||
[connection signal="timeout" from="pipe_timer_half" to="." method="_on_pipe_timer_half_timeout"]
|
||||
[connection signal="timeout" from="timer_fire" to="." method="_on_timer_fire_timeout"]
|
||||
|
||||
+10
-1
@@ -5,7 +5,7 @@ extends Area2D
|
||||
@onready var player = %player
|
||||
@onready var audio_stream_player = $AudioStreamPlayer
|
||||
@onready var music = %Music
|
||||
|
||||
@export var level_score : int
|
||||
|
||||
func _on_body_entered(body):
|
||||
animation_player.play("change_scene")
|
||||
@@ -13,5 +13,14 @@ func _on_body_entered(body):
|
||||
music.stop()
|
||||
|
||||
func load_new_scene():
|
||||
var config = ConfigFile.new()
|
||||
var err = config.load("user://config.cfg")
|
||||
|
||||
if err == OK:
|
||||
var available_level = config.get_value("level", "available_level", 0)
|
||||
level_score = level_score if level_score > available_level else available_level
|
||||
config.set_value("level", "available_level", level_score)
|
||||
config.save("user://config.cfg")
|
||||
|
||||
get_tree().change_scene_to_file("res://scenes/levels/" + load_level + ".tscn")
|
||||
|
||||
|
||||
+11
-6
@@ -1,15 +1,20 @@
|
||||
extends CanvasLayer
|
||||
|
||||
@onready var buttons = [$Control/Button_1, $Control/Button_2, $Control/Button_3]
|
||||
var available_level = 0
|
||||
|
||||
# Called when the node enters the scene tree for the first time.
|
||||
func _ready():
|
||||
pass # Replace with function body.
|
||||
var config = ConfigFile.new()
|
||||
var err = config.load("user://config.cfg")
|
||||
|
||||
if err == OK:
|
||||
available_level = config.get_value("level", "available_level", 1)
|
||||
else:
|
||||
available_level = 1
|
||||
|
||||
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||
func _process(delta):
|
||||
pass
|
||||
|
||||
for i in range(0, available_level):
|
||||
if i < len(buttons):
|
||||
buttons[i].disabled = false
|
||||
|
||||
func _on_button_pressed(extra_arg_0):
|
||||
get_tree().change_scene_to_file("res://scenes/levels/level_"+ extra_arg_0 +".tscn")
|
||||
|
||||
@@ -27,10 +27,10 @@ func _physics_process(delta):
|
||||
if ray_cast_left_2 == null:
|
||||
return
|
||||
|
||||
if ray_cast_left.is_colliding() or ray_cast_left_2.is_colliding():
|
||||
if (ray_cast_left.is_colliding() or ray_cast_left_2.is_colliding()) and not is_down:
|
||||
speed = abs(speed)
|
||||
animated_sprite_2d.flip_h = true
|
||||
elif ray_cast_right.is_colliding() or ray_cast_right_2.is_colliding():
|
||||
elif (ray_cast_right.is_colliding() or ray_cast_right_2.is_colliding()) and not is_down:
|
||||
speed = -abs(speed)
|
||||
animated_sprite_2d.flip_h = false
|
||||
|
||||
|
||||
+9
-1
@@ -12,6 +12,7 @@ extends CharacterBody2D
|
||||
@onready var shrink_sound = $shrinkSound
|
||||
@onready var die_player = $diePlayer
|
||||
@onready var music = %Music
|
||||
@onready var timer_fire = $timer_fire
|
||||
|
||||
|
||||
const SPEED = 130.0
|
||||
@@ -36,6 +37,7 @@ var crawl = false
|
||||
var fire = false
|
||||
var toucht_velocity = Vector2.ZERO
|
||||
var t_velocity = 0
|
||||
var can_fire = 0
|
||||
|
||||
@export var fireball_prefab : PackedScene
|
||||
|
||||
@@ -101,7 +103,8 @@ func _physics_process(delta):
|
||||
velocity.y = JUMPt_velocity
|
||||
|
||||
# check fireball
|
||||
if is_flower and (Input.is_action_just_pressed("flower") or fire):
|
||||
if is_flower and (Input.is_action_just_pressed("flower") or fire) and can_fire < 2:
|
||||
can_fire += 1
|
||||
fire = false
|
||||
var instance = fireball_prefab.instantiate()
|
||||
get_parent().add_child(instance)
|
||||
@@ -110,6 +113,7 @@ func _physics_process(delta):
|
||||
instance.linear_velocity.x = -200 if animated_sprite_2d.flip_h else 200
|
||||
instance.linear_velocity.y = 50
|
||||
instance.angular_velocity = 0
|
||||
timer_fire.start()
|
||||
|
||||
|
||||
# get input
|
||||
@@ -216,3 +220,7 @@ func _on_pipe_timer_timeout():
|
||||
|
||||
func _on_pipe_timer_half_timeout():
|
||||
position = pipe_target
|
||||
|
||||
|
||||
func _on_timer_fire_timeout():
|
||||
can_fire = 0
|
||||
|
||||
Reference in New Issue
Block a user