commit afb7985ef40cec7bf2a6d07bdf5dfc974d667aed Author: Sameer Rahmani Date: Sat Nov 9 22:55:27 2019 +0000 First working copy has been done diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..96c3f59 --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +# Godot-specific ignores +.import/ +export.cfg +export_presets.cfg + +# Mono-specific ignores +.mono/ +data_*/ +*~ \ No newline at end of file diff --git a/HUD.gd b/HUD.gd new file mode 100644 index 0000000..6e6a90d --- /dev/null +++ b/HUD.gd @@ -0,0 +1,34 @@ +extends CanvasLayer + +signal start_game + +func _ready(): + pass + + +func show_message(text): + $MessageLabel.text = text + $MessageLabel.show() + $MessageTimer.start() + + +func show_game_over(): + show_message("Game Over") + yield($MessageTimer, "timeout") + $MessageLabel.text = "Dodge the\nCreeps!" + $MessageLabel.show() + yield(get_tree().create_timer(1), 'timeout') + $StartButton.show() + + +func update_score(score): + $ScoreLabel.text = str(score) + + +func _on_StartButton_pressed(): + $StartButton.hide() + emit_signal("start_game") + + +func _on_MessageTimer_timeout(): + $MessageLabel.hide() diff --git a/HUD.tscn b/HUD.tscn new file mode 100644 index 0000000..4ba4cc8 --- /dev/null +++ b/HUD.tscn @@ -0,0 +1,54 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://HUD.gd" type="Script" id=1] +[ext_resource path="res://fonts/Xolonium-Regular.ttf" type="DynamicFontData" id=2] + +[sub_resource type="DynamicFont" id=1] +size = 64 +font_data = ExtResource( 2 ) + +[sub_resource type="DynamicFont" id=2] +size = 64 +font_data = ExtResource( 2 ) + +[sub_resource type="DynamicFont" id=3] +size = 64 +font_data = ExtResource( 2 ) + +[node name="HUD" type="CanvasLayer"] +script = ExtResource( 1 ) + +[node name="ScoreLabel" type="Label" parent="."] +anchor_right = 1.0 +margin_bottom = 78.0 +custom_fonts/font = SubResource( 1 ) +text = "0" +align = 1 + +[node name="MessageLabel" type="Label" parent="."] +anchor_left = 0.5 +anchor_top = 0.5 +anchor_right = 0.5 +anchor_bottom = 0.5 +margin_left = -319.0 +margin_top = -79.5 +margin_right = 319.0 +margin_bottom = 79.5 +custom_fonts/font = SubResource( 2 ) +text = "Dogde the + Creeps !" +align = 1 + +[node name="StartButton" type="Button" parent="."] +anchor_left = 0.5 +anchor_top = 1.0 +anchor_right = 0.5 +anchor_bottom = 1.0 +margin_left = -90.0 +margin_top = -100.0 +margin_right = 90.0 +custom_fonts/font = SubResource( 3 ) +text = "Start" + +[node name="MessageTimer" type="Timer" parent="."] +[connection signal="pressed" from="StartButton" to="." method="_on_StartButton_pressed"] diff --git a/Main.gd b/Main.gd new file mode 100644 index 0000000..84b20a3 --- /dev/null +++ b/Main.gd @@ -0,0 +1,49 @@ +extends Node + +export (PackedScene) var Mob +var score + +func _ready(): + pass # Replace with function body. + + +func game_over(): + $ScoreTimer.stop() + $MobTimer.stop() + $HUD.show_game_over() + + +func new_game(): + score = 0 + $HUD.update_score(score) + $HUD.show_message("Get Ready") + $Player.start($StartPosition.position) + $StartTimer.start() + + +func _on_MobTimer_timeout(): + # Choose a random location on Path2D. + $MobPath/MobSpawnLocation.set_offset(randi()) + # Create a Mob instance and add it to the scene. + var mob = Mob.instance() + add_child(mob) + # Set the mob's direction perpendicular to the path direction. + var direction = $MobPath/MobSpawnLocation.rotation + PI / 2 + # Set the mob's position to a random location. + mob.position = $MobPath/MobSpawnLocation.position + # Add some randomness to the direction. + direction += rand_range(-PI / 4, PI / 4) + mob.rotation = direction + # Set the velocity (speed & direction). + mob.linear_velocity = Vector2(rand_range(mob.min_speed, mob.max_speed), 0) + mob.linear_velocity = mob.linear_velocity.rotated(direction) + + +func _on_StartTimer_timeout(): + $MobTimer.start() + $ScoreTimer.start() + + +func _on_ScoreTimer_timeout(): + score += 1 + $HUD.update_score(score) diff --git a/Main.tscn b/Main.tscn new file mode 100644 index 0000000..0172432 --- /dev/null +++ b/Main.tscn @@ -0,0 +1,44 @@ +[gd_scene load_steps=6 format=2] + +[ext_resource path="res://Main.gd" type="Script" id=1] +[ext_resource path="res://Mob.tscn" type="PackedScene" id=2] +[ext_resource path="res://Player.tscn" type="PackedScene" id=3] +[ext_resource path="res://HUD.tscn" type="PackedScene" id=4] + +[sub_resource type="Curve2D" id=1] +_data = { +"points": PoolVector2Array( 0, 0, 0, 0, 480, 0, 0, 0, 0, 0, 480, 720, 0, 0, 0, 0, 0, 720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 0 ) +} + +[node name="Main" type="Node"] +script = ExtResource( 1 ) +Mob = ExtResource( 2 ) + +[node name="Player" parent="." instance=ExtResource( 3 )] +speed = 400 + +[node name="MobTimer" type="Timer" parent="."] +wait_time = 0.5 + +[node name="StartTimer" type="Timer" parent="."] +wait_time = 2.0 +one_shot = true + +[node name="ScoreTimer" type="Timer" parent="."] + +[node name="StartPosition" type="Position2D" parent="."] +position = Vector2( 240, 450 ) + +[node name="MobPath" type="Path2D" parent="."] +curve = SubResource( 1 ) + +[node name="MobSpawnLocation" type="PathFollow2D" parent="MobPath"] +position = Vector2( 480, 0 ) +rotation = 1.5708 + +[node name="HUD" parent="." instance=ExtResource( 4 )] +[connection signal="hit" from="Player" to="." method="game_over"] +[connection signal="timeout" from="MobTimer" to="." method="_on_MobTimer_timeout"] +[connection signal="timeout" from="StartTimer" to="." method="_on_StartTimer_timeout"] +[connection signal="timeout" from="ScoreTimer" to="." method="_on_ScoreTimer_timeout"] +[connection signal="start_game" from="HUD" to="." method="new_game"] diff --git a/Mob.gd b/Mob.gd new file mode 100644 index 0000000..67d0c36 --- /dev/null +++ b/Mob.gd @@ -0,0 +1,15 @@ +extends RigidBody2D + +export var min_speed = 150 # Minimum speed range. +export var max_speed = 250 # Maximum speed range. + +var mob_types = ["walk", "swim", "fly"] + + +func _ready(): + $AnimatedSprite.animation = mob_types[randi() % mob_types.size()] + $AnimatedSprite.play() + + +func _on_Visibility_screen_exited(): + queue_free() diff --git a/Mob.tscn b/Mob.tscn new file mode 100644 index 0000000..9fc6af8 --- /dev/null +++ b/Mob.tscn @@ -0,0 +1,51 @@ +[gd_scene load_steps=10 format=2] + +[ext_resource path="res://Mob.gd" type="Script" id=1] +[ext_resource path="res://art/enemyWalking_1.png" type="Texture" id=2] +[ext_resource path="res://art/enemyWalking_2.png" type="Texture" id=3] +[ext_resource path="res://art/enemySwimming_1.png" type="Texture" id=4] +[ext_resource path="res://art/enemySwimming_2.png" type="Texture" id=5] +[ext_resource path="res://art/enemyFlyingAlt_1.png" type="Texture" id=6] +[ext_resource path="res://art/enemyFlyingAlt_2.png" type="Texture" id=7] + +[sub_resource type="SpriteFrames" id=1] +animations = [ { +"frames": [ ExtResource( 2 ), ExtResource( 3 ) ], +"loop": true, +"name": "walk", +"speed": 4.0 +}, { +"frames": [ ExtResource( 4 ), ExtResource( 5 ) ], +"loop": true, +"name": "swim", +"speed": 4.0 +}, { +"frames": [ ExtResource( 6 ), ExtResource( 7 ) ], +"loop": true, +"name": "fly", +"speed": 3.0 +} ] + +[sub_resource type="CapsuleShape2D" id=2] +radius = 33.9445 +height = 16.5796 + +[node name="Mob" type="RigidBody2D"] +collision_mask = 0 +gravity_scale = 0.0 +script = ExtResource( 1 ) +__meta__ = { +"_edit_group_": true +} + +[node name="AnimatedSprite" type="AnimatedSprite" parent="."] +scale = Vector2( 0.75, 0.75 ) +frames = SubResource( 1 ) +animation = "fly" + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +rotation = 1.5708 +shape = SubResource( 2 ) + +[node name="Visibility" type="VisibilityNotifier2D" parent="."] +[connection signal="screen_exited" from="Visibility" to="." method="_on_Visibility_screen_exited"] diff --git a/Player.gd b/Player.gd new file mode 100644 index 0000000..8387aa9 --- /dev/null +++ b/Player.gd @@ -0,0 +1,60 @@ +extends Area2D + +# How fast the player will move (pixels/sec). +export var speed = 400 +# Size of the game window. +var screen_size + +# Signals +signal hit + + +func _ready(): + hide() + screen_size = get_viewport_rect().size + + +func _process(delta): + var velocity = Vector2() # The player's movement vector. + + if Input.is_action_pressed("ui_right"): + velocity.x += 1 + if Input.is_action_pressed("ui_left"): + velocity.x -= 1 + if Input.is_action_pressed("ui_down"): + velocity.y += 1 + if Input.is_action_pressed("ui_up"): + velocity.y -= 1 + + if velocity.length() > 0: + velocity = velocity.normalized() * speed + $AnimatedSprite.play() + else: + $AnimatedSprite.stop() + + position += velocity * delta + # clamp is function that makes sure that we don't go out of the screen's + # boundaries. + # Clamping a value means restricting it to a given range. + position.x = clamp(position.x, 0, screen_size.x) + position.y = clamp(position.y, 0, screen_size.y) + + if velocity.x != 0: + $AnimatedSprite.animation = "right" + $AnimatedSprite.flip_v = false + $AnimatedSprite.flip_h = velocity.x < 0 + elif velocity.y != 0: + $AnimatedSprite.animation = "up" + $AnimatedSprite.flip_v = velocity.y > 0 + + +func _on_Player_body_entered(body): + hide() + emit_signal('hit') + $CollisionShape2D.set_deferred('disabled', true) + + +func start(pos): + position = pos + show() + $CollisionShape2D.disabled = false diff --git a/Player.tscn b/Player.tscn new file mode 100644 index 0000000..4a4d23c --- /dev/null +++ b/Player.tscn @@ -0,0 +1,40 @@ +[gd_scene load_steps=8 format=2] + +[ext_resource path="res://Player.gd" type="Script" id=1] +[ext_resource path="res://art/playerGrey_walk1.png" type="Texture" id=2] +[ext_resource path="res://art/playerGrey_walk2.png" type="Texture" id=3] +[ext_resource path="res://art/playerGrey_up1.png" type="Texture" id=4] +[ext_resource path="res://art/playerGrey_up2.png" type="Texture" id=5] + +[sub_resource type="SpriteFrames" id=1] +animations = [ { +"frames": [ ExtResource( 2 ), ExtResource( 3 ) ], +"loop": true, +"name": "right", +"speed": 5.0 +}, { +"frames": [ ExtResource( 4 ), ExtResource( 5 ) ], +"loop": true, +"name": "up", +"speed": 5.0 +} ] + +[sub_resource type="CapsuleShape2D" id=2] +radius = 26.9577 +height = 14.0111 + +[node name="Player" type="Area2D"] +script = ExtResource( 1 ) +__meta__ = { +"_edit_group_": true +} +speed = null + +[node name="AnimatedSprite" type="AnimatedSprite" parent="."] +scale = Vector2( 0.5, 0.5 ) +frames = SubResource( 1 ) +animation = "up" + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +shape = SubResource( 2 ) +[connection signal="body_entered" from="." to="." method="_on_Player_body_entered"] diff --git a/art/.DS_Store b/art/.DS_Store new file mode 100644 index 0000000..5008ddf Binary files /dev/null and b/art/.DS_Store differ diff --git a/art/House In a Forest Loop.ogg b/art/House In a Forest Loop.ogg new file mode 100644 index 0000000..ece3640 Binary files /dev/null and b/art/House In a Forest Loop.ogg differ diff --git a/art/House In a Forest Loop.ogg.import b/art/House In a Forest Loop.ogg.import new file mode 100644 index 0000000..3594fd6 --- /dev/null +++ b/art/House In a Forest Loop.ogg.import @@ -0,0 +1,15 @@ +[remap] + +importer="ogg_vorbis" +type="AudioStreamOGGVorbis" +path="res://.import/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggstr" + +[deps] + +source_file="res://art/House In a Forest Loop.ogg" +dest_files=[ "res://.import/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggstr" ] + +[params] + +loop=true +loop_offset=0 diff --git a/art/enemyFlyingAlt_1.png b/art/enemyFlyingAlt_1.png new file mode 100644 index 0000000..1ef132f Binary files /dev/null and b/art/enemyFlyingAlt_1.png differ diff --git a/art/enemyFlyingAlt_1.png.import b/art/enemyFlyingAlt_1.png.import new file mode 100644 index 0000000..e9a0ed3 --- /dev/null +++ b/art/enemyFlyingAlt_1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/enemyFlyingAlt_1.png-559f599b16c69b112c1b53f6332e9489.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/enemyFlyingAlt_1.png" +dest_files=[ "res://.import/enemyFlyingAlt_1.png-559f599b16c69b112c1b53f6332e9489.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 diff --git a/art/enemyFlyingAlt_2.png b/art/enemyFlyingAlt_2.png new file mode 100644 index 0000000..a50f70a Binary files /dev/null and b/art/enemyFlyingAlt_2.png differ diff --git a/art/enemyFlyingAlt_2.png.import b/art/enemyFlyingAlt_2.png.import new file mode 100644 index 0000000..3ee0c17 --- /dev/null +++ b/art/enemyFlyingAlt_2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/enemyFlyingAlt_2.png-31dc7310eda6e1b721224f3cd932c076.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/enemyFlyingAlt_2.png" +dest_files=[ "res://.import/enemyFlyingAlt_2.png-31dc7310eda6e1b721224f3cd932c076.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 diff --git a/art/enemySwimming_1.png b/art/enemySwimming_1.png new file mode 100644 index 0000000..9a79114 Binary files /dev/null and b/art/enemySwimming_1.png differ diff --git a/art/enemySwimming_1.png.import b/art/enemySwimming_1.png.import new file mode 100644 index 0000000..1be120d --- /dev/null +++ b/art/enemySwimming_1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/enemySwimming_1.png-dd0e11759dc3d624c8a704f6e98a3d80.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/enemySwimming_1.png" +dest_files=[ "res://.import/enemySwimming_1.png-dd0e11759dc3d624c8a704f6e98a3d80.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 diff --git a/art/enemySwimming_2.png b/art/enemySwimming_2.png new file mode 100644 index 0000000..f81aade Binary files /dev/null and b/art/enemySwimming_2.png differ diff --git a/art/enemySwimming_2.png.import b/art/enemySwimming_2.png.import new file mode 100644 index 0000000..3655a98 --- /dev/null +++ b/art/enemySwimming_2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/enemySwimming_2.png-4c0cbc0732264c4ea3290340bd4a0a62.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/enemySwimming_2.png" +dest_files=[ "res://.import/enemySwimming_2.png-4c0cbc0732264c4ea3290340bd4a0a62.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 diff --git a/art/enemyWalking_1.png b/art/enemyWalking_1.png new file mode 100644 index 0000000..9ad7aab Binary files /dev/null and b/art/enemyWalking_1.png differ diff --git a/art/enemyWalking_1.png.import b/art/enemyWalking_1.png.import new file mode 100644 index 0000000..fb156d8 --- /dev/null +++ b/art/enemyWalking_1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/enemyWalking_1.png-5af6eedbe61b701677d490ffdc1e6471.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/enemyWalking_1.png" +dest_files=[ "res://.import/enemyWalking_1.png-5af6eedbe61b701677d490ffdc1e6471.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 diff --git a/art/enemyWalking_2.png b/art/enemyWalking_2.png new file mode 100644 index 0000000..c9e233e Binary files /dev/null and b/art/enemyWalking_2.png differ diff --git a/art/enemyWalking_2.png.import b/art/enemyWalking_2.png.import new file mode 100644 index 0000000..24536cf --- /dev/null +++ b/art/enemyWalking_2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/enemyWalking_2.png-67c480ed60c35e95f5acb0436246b935.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/enemyWalking_2.png" +dest_files=[ "res://.import/enemyWalking_2.png-67c480ed60c35e95f5acb0436246b935.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 diff --git a/art/gameover.wav b/art/gameover.wav new file mode 100644 index 0000000..77f865a Binary files /dev/null and b/art/gameover.wav differ diff --git a/art/gameover.wav.import b/art/gameover.wav.import new file mode 100644 index 0000000..58c33dd --- /dev/null +++ b/art/gameover.wav.import @@ -0,0 +1,21 @@ +[remap] + +importer="wav" +type="AudioStreamSample" +path="res://.import/gameover.wav-98c95c744b35280048c2bd093cf8a356.sample" + +[deps] + +source_file="res://art/gameover.wav" +dest_files=[ "res://.import/gameover.wav-98c95c744b35280048c2bd093cf8a356.sample" ] + +[params] + +force/8_bit=false +force/mono=false +force/max_rate=false +force/max_rate_hz=44100 +edit/trim=true +edit/normalize=true +edit/loop=false +compress/mode=0 diff --git a/art/playerGrey_up1.png b/art/playerGrey_up1.png new file mode 100644 index 0000000..5596dbc Binary files /dev/null and b/art/playerGrey_up1.png differ diff --git a/art/playerGrey_up1.png.import b/art/playerGrey_up1.png.import new file mode 100644 index 0000000..2a85b4b --- /dev/null +++ b/art/playerGrey_up1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/playerGrey_up1.png-6bd114d0a6beac91f48e3a7314d44564.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/playerGrey_up1.png" +dest_files=[ "res://.import/playerGrey_up1.png-6bd114d0a6beac91f48e3a7314d44564.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 diff --git a/art/playerGrey_up2.png b/art/playerGrey_up2.png new file mode 100644 index 0000000..07c63b8 Binary files /dev/null and b/art/playerGrey_up2.png differ diff --git a/art/playerGrey_up2.png.import b/art/playerGrey_up2.png.import new file mode 100644 index 0000000..9fcd1f7 --- /dev/null +++ b/art/playerGrey_up2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/playerGrey_up2.png-d6aba85f5f2675ebc7045efa7552ee79.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/playerGrey_up2.png" +dest_files=[ "res://.import/playerGrey_up2.png-d6aba85f5f2675ebc7045efa7552ee79.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 diff --git a/art/playerGrey_walk1.png b/art/playerGrey_walk1.png new file mode 100644 index 0000000..6145887 Binary files /dev/null and b/art/playerGrey_walk1.png differ diff --git a/art/playerGrey_walk1.png.import b/art/playerGrey_walk1.png.import new file mode 100644 index 0000000..9816847 --- /dev/null +++ b/art/playerGrey_walk1.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/playerGrey_walk1.png-c4773fe7a7bf85d7ab732eb4458c2742.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/playerGrey_walk1.png" +dest_files=[ "res://.import/playerGrey_walk1.png-c4773fe7a7bf85d7ab732eb4458c2742.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 diff --git a/art/playerGrey_walk2.png b/art/playerGrey_walk2.png new file mode 100644 index 0000000..3a699a9 Binary files /dev/null and b/art/playerGrey_walk2.png differ diff --git a/art/playerGrey_walk2.png.import b/art/playerGrey_walk2.png.import new file mode 100644 index 0000000..e65e1e4 --- /dev/null +++ b/art/playerGrey_walk2.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="StreamTexture" +path="res://.import/playerGrey_walk2.png-34d2d916366100182d08037c51884043.stex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://art/playerGrey_walk2.png" +dest_files=[ "res://.import/playerGrey_walk2.png-34d2d916366100182d08037c51884043.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 diff --git a/default_env.tres b/default_env.tres new file mode 100644 index 0000000..20207a4 --- /dev/null +++ b/default_env.tres @@ -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 ) diff --git a/fonts/Xolonium-Regular.ttf b/fonts/Xolonium-Regular.ttf new file mode 100644 index 0000000..031d627 Binary files /dev/null and b/fonts/Xolonium-Regular.ttf differ diff --git a/icon.png b/icon.png new file mode 100644 index 0000000..2b65815 Binary files /dev/null and b/icon.png differ diff --git a/icon.png.import b/icon.png.import new file mode 100644 index 0000000..96cbf46 --- /dev/null +++ b/icon.png.import @@ -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 diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..ae50116 --- /dev/null +++ b/project.godot @@ -0,0 +1,31 @@ +; 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 + +_global_script_classes=[ ] +_global_script_class_icons={ + +} + +[application] + +config/name="tutorial_2d" +run/main_scene="res://Main.tscn" +config/icon="res://icon.png" + +[display] + +window/size/width=480 +window/size/height=720 +window/size/resizable=false +window/size/borderless=true + +[rendering] + +environment/default_environment="res://default_env.tres"