From 73120c4f3568eeb4ca29765d1bb32fcb7404358c Mon Sep 17 00:00:00 2001 From: deranjer Date: Thu, 26 Jan 2023 16:28:00 -0500 Subject: [PATCH] first commit, initial starting game --- .gitattributes | 2 + .gitignore | 2 + .../test_player/WARRIOR SKELETON SS 2.png | Bin 0 -> 3699 bytes .../WARRIOR SKELETON SS 2.png.import | 34 ++ Characters/test_player/test_player.gd | 204 +++++++++++ Characters/test_player/test_player.tscn | 95 +++++ Game Manager/game_manager.gd | 18 + Game Manager/game_manager.tscn | 6 + Levels/Level1/Level1.tscn | 337 ++++++++++++++++++ Levels/Tileset1.png | Bin 0 -> 3656 bytes Levels/Tileset1.png.import | 34 ++ icon.svg | 1 + icon.svg.import | 37 ++ project.godot | 71 ++++ 14 files changed, 841 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 Characters/test_player/WARRIOR SKELETON SS 2.png create mode 100644 Characters/test_player/WARRIOR SKELETON SS 2.png.import create mode 100644 Characters/test_player/test_player.gd create mode 100644 Characters/test_player/test_player.tscn create mode 100644 Game Manager/game_manager.gd create mode 100644 Game Manager/game_manager.tscn create mode 100644 Levels/Level1/Level1.tscn create mode 100644 Levels/Tileset1.png create mode 100644 Levels/Tileset1.png.import create mode 100644 icon.svg create mode 100644 icon.svg.import create mode 100644 project.godot diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..8ad74f7 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,2 @@ +# Normalize EOL for all files that Git considers text files. +* text=auto eol=lf diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4709183 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +# Godot 4+ specific ignores +.godot/ diff --git a/Characters/test_player/WARRIOR SKELETON SS 2.png b/Characters/test_player/WARRIOR SKELETON SS 2.png new file mode 100644 index 0000000000000000000000000000000000000000..a23c4379e098a3865ac0945af2a5295362f61e98 GIT binary patch literal 3699 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 void: + value = value + amount + emit_signal("value_changed", value) + +func set_disabled(is_disabled:bool): + player_disabled = is_disabled + if is_disabled: + anim_tree.set(disabled_str, 1) + else: + anim_tree.set(disabled_str, 0) + +func speed_changed_func(amount: int) -> void: + speed = speed + amount + if speed <= 0: + health_changed_func(-1) + speed = 100 + elif speed > max_speed: + speed = max_speed + health_changed_func(1) + emit_signal("speed_changed", speed) + +# reset our invulnerability animations +func _on_invulnerable_timer_timeout(): + anim_tree.set(damage_str, 0) + +func health_changed_func(amount: int): + if amount < 0: + if invulnerability_timer.is_stopped(): + invulnerability_timer.start() + health = health + amount + if health < 0: + print("kill!") + health = max_health + #TODO: Respawn char + else: + print("Setting health frame: ", health) + anim_tree.set(damage_str, 1) + else: + health = health + amount + emit_signal("health_changed", health) + +func attack_finished(): + anim_tree.set(atk_str, 0) + is_attacking = false + +func get_input(): + if Input.is_action_just_pressed("print_pos"): + print("PLAYER POSITION!: ", player.get_position()) + if Input.is_action_just_pressed("show_inventory"): + pass + #show_inventory() + + if player_disabled or player_in_inventory: + return + + if Input.is_action_just_pressed("speed_up"): + speed_changed_func(10) + if Input.is_action_just_pressed("attack"): + if item_hovering: + spawned_item = null + return + var now = Time.get_ticks_msec() + if now >= next_attack_time: + is_attacking = true + if player_facing == "left": + player_sprite.flip_h = true + anim_tree.set(atk_str, 1) + else: + player_sprite.flip_h = false + anim_tree.set(atk_str, 1) + if equipped: + pass + #spawned_item = load(ItemDatabase.Castable_objects[equipped.item_name]).instantiate() + #var map = get_tree().current_scene + #map.add_child(spawned_item) + #inventory_ui.item_cooldown() + #if equipped.item_clip_size > 0: + # inventory_ui.set_ammo(-1) + #spawned_item.use_item(player, spawned_item, map) + #next_attack_time = now + attack_speed + velocity = Vector2() + var direction : String + # if not input_active: +# return + if Input.is_action_pressed("right") and not is_attacking: + player_facing = "right" + player_sprite.flip_h = false + velocity.x += 1 + anim_tree.set(mov_str, 1) + if Input.is_action_pressed("left") and not is_attacking: + player_sprite.flip_h = true + player_facing = "left" + velocity.x -= 1 + anim_tree.set(mov_str, 1) + if Input.is_action_pressed("down") and not is_attacking: + direction = "down" + velocity.y += 1 + anim_tree.set(mov_str, 1) + if Input.is_action_pressed("up") and not is_attacking: + direction = "up" + velocity.y -= 1 + anim_tree.set(mov_str, 1) + + + velocity = velocity.normalized() * speed + if velocity == Vector2.ZERO: + anim_tree.set(mov_str, 0) + +func _physics_process(delta): +# if not is_multiplayer_authority(): +# get_input() +# move_and_slide() +# return + + get_input() + move_and_slide() + + for i in get_slide_collision_count(): + var collision = get_slide_collision(i) + var collider = collision.get_collider() + if collider.is_in_group("moveable"): + var normal = collision.get_normal() + collider.apply_central_impulse(-collision.get_normal() * push_power) + + if player_hit.is_player_hit: + velocity = Vector2.ZERO + set_disabled(true) + player_hit.is_player_hit = false + var tween = get_tree().create_tween() + var new_location = (player_hit.hit_velocity * throwback_strength) * delta + tween.tween_method(move_player, Vector2(0,0) * delta, new_location, 1) + await get_tree().create_timer(0.5).timeout + set_disabled(false) + # Update sync variables, which will be replicated to everyone else + #rpc(&'update_movement', velocity) +# $Networking.sync_position = position +# $Networking.sync_velocity = velocity +# $Networking.flipped_v = player_sprite.flip_v +# $Networking.flipped_h = player_sprite.flip_h +# $Networking.sync_frame_coords = player_sprite.get_frame_coords() + +func move_player(c_velocity: Vector2): +# rpc(&'update_movement', velocity) + var collided = move_and_collide(c_velocity) +# if collided: +# print("Collided again?", collided) +# var collider = collision.get_collider() +# if collider.is_in_group("moveable"): +# var normal = collision.get_normal() +# collider.apply_central_impulse(-collision.get_normal() * push_power) + player_hit.is_player_hit = false diff --git a/Characters/test_player/test_player.tscn b/Characters/test_player/test_player.tscn new file mode 100644 index 0000000..924e70d --- /dev/null +++ b/Characters/test_player/test_player.tscn @@ -0,0 +1,95 @@ +[gd_scene load_steps=9 format=3 uid="uid://c1gncjamuavvs"] + +[ext_resource type="Script" path="res://Characters/test_player/test_player.gd" id="1_6aci1"] +[ext_resource type="Texture2D" uid="uid://cs5o8bykug82q" path="res://Characters/test_player/WARRIOR SKELETON SS 2.png" id="1_8pmbp"] + +[sub_resource type="RectangleShape2D" id="RectangleShape2D_8xegc"] +size = Vector2(22, 20) + +[sub_resource type="Animation" id="Animation_ue5sa"] +resource_name = "idle" +length = 2.0 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame_coords") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.4, 0.8, 1.2, 1.6), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1), +"update": 1, +"values": [Vector2i(0, 0), Vector2i(1, 0), Vector2i(2, 0), Vector2i(3, 0), Vector2i(4, 0)] +} + +[sub_resource type="Animation" id="Animation_o87wd"] +resource_name = "walk" +length = 2.5 +loop_mode = 1 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame_coords") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.4, 0.8, 1.2, 1.6, 2.1), +"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1), +"update": 1, +"values": [Vector2i(0, 1), Vector2i(1, 1), Vector2i(2, 1), Vector2i(3, 1), Vector2i(4, 1), Vector2i(5, 1)] +} + +[sub_resource type="Animation" id="Animation_6p4h5"] +resource_name = "attack" +length = 0.65 +tracks/0/type = "value" +tracks/0/imported = false +tracks/0/enabled = true +tracks/0/path = NodePath("Sprite2D:frame_coords") +tracks/0/interp = 1 +tracks/0/loop_wrap = true +tracks/0/keys = { +"times": PackedFloat32Array(0, 0.2, 0.4, 0.6), +"transitions": PackedFloat32Array(1, 1, 1, 1), +"update": 1, +"values": [Vector2i(0, 5), Vector2i(1, 5), Vector2i(2, 5), Vector2i(3, 5)] +} + +[sub_resource type="AnimationLibrary" id="AnimationLibrary_0a2an"] +_data = { +"attack": SubResource("Animation_6p4h5"), +"idle": SubResource("Animation_ue5sa"), +"walk": SubResource("Animation_o87wd") +} + +[sub_resource type="AnimationNodeBlendTree" id="AnimationNodeBlendTree_h4jmi"] +nodes/output/position = Vector2(900, 140) + +[node name="test_player" type="CharacterBody2D"] +script = ExtResource("1_6aci1") + +[node name="CollisionShape2D" type="CollisionShape2D" parent="."] +position = Vector2(1, 2) +shape = SubResource("RectangleShape2D_8xegc") + +[node name="Sprite2D" type="Sprite2D" parent="."] +z_index = 1 +texture = ExtResource("1_8pmbp") +hframes = 6 +vframes = 6 +frame = 33 + +[node name="AnimationPlayer" type="AnimationPlayer" parent="."] +libraries = { +"": SubResource("AnimationLibrary_0a2an") +} + +[node name="AnimationTree" type="AnimationTree" parent="."] +tree_root = SubResource("AnimationNodeBlendTree_h4jmi") +anim_player = NodePath("../AnimationPlayer") + +[node name="player_cam" type="Camera2D" parent="."] +current = true + +[node name="InvulnerableTimer" type="Timer" parent="."] diff --git a/Game Manager/game_manager.gd b/Game Manager/game_manager.gd new file mode 100644 index 0000000..5d7addc --- /dev/null +++ b/Game Manager/game_manager.gd @@ -0,0 +1,18 @@ +extends Node + +@onready var manager = get_node(".") +const Level1 = preload("res://Levels/Level1/Level1.tscn") +const Player = preload("res://Characters/test_player/test_player.tscn") + +# Called when the node enters the scene tree for the first time. +func _ready(): + var level_1 = Level1.instantiate() + manager.add_child(level_1) + var new_player = Player.instantiate() + manager.add_child(new_player) + + + +# Called every frame. 'delta' is the elapsed time since the previous frame. +func _process(delta): + pass diff --git a/Game Manager/game_manager.tscn b/Game Manager/game_manager.tscn new file mode 100644 index 0000000..6158f11 --- /dev/null +++ b/Game Manager/game_manager.tscn @@ -0,0 +1,6 @@ +[gd_scene load_steps=2 format=3 uid="uid://dlgcmxvgh6f3k"] + +[ext_resource type="Script" path="res://Game Manager/game_manager.gd" id="1_bkvdw"] + +[node name="game_manager" type="Node2D"] +script = ExtResource("1_bkvdw") diff --git a/Levels/Level1/Level1.tscn b/Levels/Level1/Level1.tscn new file mode 100644 index 0000000..be6d747 --- /dev/null +++ b/Levels/Level1/Level1.tscn @@ -0,0 +1,337 @@ +[gd_scene load_steps=4 format=3 uid="uid://bfjsdoykr1fcd"] + +[ext_resource type="Texture2D" uid="uid://wutfmaxi51g5" path="res://Levels/Tileset1.png" id="1_ct5gf"] + +[sub_resource type="TileSetAtlasSource" id="TileSetAtlasSource_itbp4"] +texture = ExtResource("1_ct5gf") +0:0/0 = 0 +0:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:0/0/physics_layer_0/angular_velocity = 0.0 +1:0/0 = 0 +1:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:0/0/physics_layer_0/angular_velocity = 0.0 +2:0/0 = 0 +2:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:0/0/physics_layer_0/angular_velocity = 0.0 +3:0/0 = 0 +3:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:0/0/physics_layer_0/angular_velocity = 0.0 +4:0/0 = 0 +4:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:0/0/physics_layer_0/angular_velocity = 0.0 +5:0/0 = 0 +5:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:0/0/physics_layer_0/angular_velocity = 0.0 +6:0/0 = 0 +6:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:0/0/physics_layer_0/angular_velocity = 0.0 +7:0/0 = 0 +7:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:0/0/physics_layer_0/angular_velocity = 0.0 +8:0/0 = 0 +8:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:0/0/physics_layer_0/angular_velocity = 0.0 +9:0/0 = 0 +9:0/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:0/0/physics_layer_0/angular_velocity = 0.0 +0:1/0 = 0 +0:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:1/0/physics_layer_0/angular_velocity = 0.0 +0:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +1:1/0 = 0 +1:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:1/0/physics_layer_0/angular_velocity = 0.0 +1:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +2:1/0 = 0 +2:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:1/0/physics_layer_0/angular_velocity = 0.0 +2:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +3:1/0 = 0 +3:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:1/0/physics_layer_0/angular_velocity = 0.0 +3:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +4:1/0 = 0 +4:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:1/0/physics_layer_0/angular_velocity = 0.0 +4:1/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +5:1/0 = 0 +5:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:1/0/physics_layer_0/angular_velocity = 0.0 +6:1/0 = 0 +6:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:1/0/physics_layer_0/angular_velocity = 0.0 +7:1/0 = 0 +7:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:1/0/physics_layer_0/angular_velocity = 0.0 +8:1/0 = 0 +8:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:1/0/physics_layer_0/angular_velocity = 0.0 +9:1/0 = 0 +9:1/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:1/0/physics_layer_0/angular_velocity = 0.0 +0:2/0 = 0 +0:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:2/0/physics_layer_0/angular_velocity = 0.0 +0:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +1:2/0 = 0 +1:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:2/0/physics_layer_0/angular_velocity = 0.0 +1:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +2:2/0 = 0 +2:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:2/0/physics_layer_0/angular_velocity = 0.0 +2:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +3:2/0 = 0 +3:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:2/0/physics_layer_0/angular_velocity = 0.0 +3:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +4:2/0 = 0 +4:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:2/0/physics_layer_0/angular_velocity = 0.0 +4:2/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +5:2/0 = 0 +5:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:2/0/physics_layer_0/angular_velocity = 0.0 +6:2/0 = 0 +6:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:2/0/physics_layer_0/angular_velocity = 0.0 +7:2/0 = 0 +7:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:2/0/physics_layer_0/angular_velocity = 0.0 +8:2/0 = 0 +8:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:2/0/physics_layer_0/angular_velocity = 0.0 +9:2/0 = 0 +9:2/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:2/0/physics_layer_0/angular_velocity = 0.0 +0:3/0 = 0 +0:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:3/0/physics_layer_0/angular_velocity = 0.0 +0:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +1:3/0 = 0 +1:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:3/0/physics_layer_0/angular_velocity = 0.0 +1:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +2:3/0 = 0 +2:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:3/0/physics_layer_0/angular_velocity = 0.0 +2:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +3:3/0 = 0 +3:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:3/0/physics_layer_0/angular_velocity = 0.0 +3:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +4:3/0 = 0 +4:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:3/0/physics_layer_0/angular_velocity = 0.0 +4:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +5:3/0 = 0 +5:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:3/0/physics_layer_0/angular_velocity = 0.0 +5:3/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +6:3/0 = 0 +6:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:3/0/physics_layer_0/angular_velocity = 0.0 +7:3/0 = 0 +7:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:3/0/physics_layer_0/angular_velocity = 0.0 +8:3/0 = 0 +8:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:3/0/physics_layer_0/angular_velocity = 0.0 +9:3/0 = 0 +9:3/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:3/0/physics_layer_0/angular_velocity = 0.0 +0:4/0 = 0 +0:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:4/0/physics_layer_0/angular_velocity = 0.0 +0:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +1:4/0 = 0 +1:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:4/0/physics_layer_0/angular_velocity = 0.0 +1:4/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +2:4/0 = 0 +2:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:4/0/physics_layer_0/angular_velocity = 0.0 +3:4/0 = 0 +3:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:4/0/physics_layer_0/angular_velocity = 0.0 +4:4/0 = 0 +4:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:4/0/physics_layer_0/angular_velocity = 0.0 +5:4/0 = 0 +5:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:4/0/physics_layer_0/angular_velocity = 0.0 +6:4/0 = 0 +6:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:4/0/physics_layer_0/angular_velocity = 0.0 +7:4/0 = 0 +7:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:4/0/physics_layer_0/angular_velocity = 0.0 +8:4/0 = 0 +8:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:4/0/physics_layer_0/angular_velocity = 0.0 +9:4/0 = 0 +9:4/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:4/0/physics_layer_0/angular_velocity = 0.0 +0:5/0 = 0 +0:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:5/0/physics_layer_0/angular_velocity = 0.0 +0:5/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +1:5/0 = 0 +1:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:5/0/physics_layer_0/angular_velocity = 0.0 +2:5/0 = 0 +2:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:5/0/physics_layer_0/angular_velocity = 0.0 +3:5/0 = 0 +3:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:5/0/physics_layer_0/angular_velocity = 0.0 +4:5/0 = 0 +4:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:5/0/physics_layer_0/angular_velocity = 0.0 +5:5/0 = 0 +5:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:5/0/physics_layer_0/angular_velocity = 0.0 +6:5/0 = 0 +6:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:5/0/physics_layer_0/angular_velocity = 0.0 +7:5/0 = 0 +7:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:5/0/physics_layer_0/angular_velocity = 0.0 +8:5/0 = 0 +8:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:5/0/physics_layer_0/angular_velocity = 0.0 +9:5/0 = 0 +9:5/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:5/0/physics_layer_0/angular_velocity = 0.0 +0:6/0 = 0 +0:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:6/0/physics_layer_0/angular_velocity = 0.0 +0:6/0/physics_layer_0/polygon_0/points = PackedVector2Array(-8, -8, 8, -8, 8, 8, -8, 8) +1:6/0 = 0 +1:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:6/0/physics_layer_0/angular_velocity = 0.0 +2:6/0 = 0 +2:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:6/0/physics_layer_0/angular_velocity = 0.0 +3:6/0 = 0 +3:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:6/0/physics_layer_0/angular_velocity = 0.0 +4:6/0 = 0 +4:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:6/0/physics_layer_0/angular_velocity = 0.0 +5:6/0 = 0 +5:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:6/0/physics_layer_0/angular_velocity = 0.0 +6:6/0 = 0 +6:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:6/0/physics_layer_0/angular_velocity = 0.0 +7:6/0 = 0 +7:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:6/0/physics_layer_0/angular_velocity = 0.0 +8:6/0 = 0 +8:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:6/0/physics_layer_0/angular_velocity = 0.0 +9:6/0 = 0 +9:6/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:6/0/physics_layer_0/angular_velocity = 0.0 +0:7/0 = 0 +0:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:7/0/physics_layer_0/angular_velocity = 0.0 +1:7/0 = 0 +1:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:7/0/physics_layer_0/angular_velocity = 0.0 +2:7/0 = 0 +2:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:7/0/physics_layer_0/angular_velocity = 0.0 +3:7/0 = 0 +3:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:7/0/physics_layer_0/angular_velocity = 0.0 +4:7/0 = 0 +4:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:7/0/physics_layer_0/angular_velocity = 0.0 +5:7/0 = 0 +5:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:7/0/physics_layer_0/angular_velocity = 0.0 +6:7/0 = 0 +6:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:7/0/physics_layer_0/angular_velocity = 0.0 +7:7/0 = 0 +7:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:7/0/physics_layer_0/angular_velocity = 0.0 +8:7/0 = 0 +8:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:7/0/physics_layer_0/angular_velocity = 0.0 +9:7/0 = 0 +9:7/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:7/0/physics_layer_0/angular_velocity = 0.0 +0:8/0 = 0 +0:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:8/0/physics_layer_0/angular_velocity = 0.0 +1:8/0 = 0 +1:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:8/0/physics_layer_0/angular_velocity = 0.0 +2:8/0 = 0 +2:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:8/0/physics_layer_0/angular_velocity = 0.0 +3:8/0 = 0 +3:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:8/0/physics_layer_0/angular_velocity = 0.0 +4:8/0 = 0 +4:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:8/0/physics_layer_0/angular_velocity = 0.0 +5:8/0 = 0 +5:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:8/0/physics_layer_0/angular_velocity = 0.0 +6:8/0 = 0 +6:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:8/0/physics_layer_0/angular_velocity = 0.0 +7:8/0 = 0 +7:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:8/0/physics_layer_0/angular_velocity = 0.0 +8:8/0 = 0 +8:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:8/0/physics_layer_0/angular_velocity = 0.0 +9:8/0 = 0 +9:8/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:8/0/physics_layer_0/angular_velocity = 0.0 +0:9/0 = 0 +0:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +0:9/0/physics_layer_0/angular_velocity = 0.0 +1:9/0 = 0 +1:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +1:9/0/physics_layer_0/angular_velocity = 0.0 +2:9/0 = 0 +2:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +2:9/0/physics_layer_0/angular_velocity = 0.0 +3:9/0 = 0 +3:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +3:9/0/physics_layer_0/angular_velocity = 0.0 +4:9/0 = 0 +4:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +4:9/0/physics_layer_0/angular_velocity = 0.0 +5:9/0 = 0 +5:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +5:9/0/physics_layer_0/angular_velocity = 0.0 +6:9/0 = 0 +6:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +6:9/0/physics_layer_0/angular_velocity = 0.0 +7:9/0 = 0 +7:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +7:9/0/physics_layer_0/angular_velocity = 0.0 +8:9/0 = 0 +8:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +8:9/0/physics_layer_0/angular_velocity = 0.0 +9:9/0 = 0 +9:9/0/physics_layer_0/linear_velocity = Vector2(0, 0) +9:9/0/physics_layer_0/angular_velocity = 0.0 + +[sub_resource type="TileSet" id="TileSet_dde7u"] +physics_layer_0/collision_layer = 1 +sources/0 = SubResource("TileSetAtlasSource_itbp4") + +[node name="Level1" type="Node2D"] + +[node name="TileMap" type="TileMap" parent="."] +tile_set = SubResource("TileSet_dde7u") +format = 2 +layer_0/tile_data = PackedInt32Array(0, 0, 0, 65537, 0, 0, 131074, 0, 0, 131075, 0, 0, 196611, 0, 0, 196612, 0, 0, 262148, 0, 0, 262149, 0, 0, 327686, 0, 0, 327687, 0, 0, 327688, 0, 0, 393224, 0, 0, 458760, 0, 0, 1, 0, 0, 131073, 0, 0, 196609, 0, 0, 262145, 0, 0, 327681, 0, 0, 393217, 0, 0, 458753, 0, 0, 2, 0, 0, 65538, 0, 0, 196610, 0, 0, 262146, 0, 0, 327682, 0, 0, 393218, 0, 0, 458754, 0, 0, 3, 0, 0, 65539, 0, 0, 262147, 0, 0, 327683, 0, 0, 393219, 0, 0, 458755, 0, 0, 4, 0, 0, 65540, 0, 0, 131076, 0, 0, 327684, 0, 0, 393220, 0, 0, 458756, 0, 0, 5, 0, 0, 65541, 0, 0, 131077, 0, 0, 196613, 0, 0, 327685, 0, 0, 393221, 0, 0, 458757, 0, 0, 6, 0, 0, 65542, 0, 0, 131078, 0, 0, 196614, 0, 0, 262150, 0, 0, 393222, 0, 0, 458758, 0, 0, 7, 0, 0, 65543, 0, 0, 131079, 0, 0, 196615, 0, 0, 262151, 0, 0, 393223, 0, 0, 458759, 0, 0, 8, 0, 0, 65544, 0, 0, 131080, 0, 0, 196616, 0, 0, 262152, 0, 0, 65536, 0, 0, 131072, 0, 0, 196608, 0, 0, 262144, 0, 0, 327680, 0, 0, 393216, 0, 0, 458752, 0, 0, -65536, 0, 6, -65535, 0, 6, -65534, 0, 6, -65533, 0, 6, -65532, 0, 6, -65531, 0, 6, -65530, 0, 6, -65529, 0, 6, -65528, 0, 6, -131072, 0, 5, -131071, 0, 5, -131070, 0, 5, -131069, 0, 5, -131068, 0, 5, -131067, 0, 5, -131066, 0, 5, -131065, 0, 5, -131064, 0, 5, -196608, 0, 2, -196607, 0, 2, -196606, 0, 2, -196605, 0, 2, -196604, 0, 2, -196603, 0, 2, -196602, 0, 2, -196601, 0, 2, -196600, 0, 2, -196599, 65536, 3, -131063, 0, 1, -65527, 0, 1, 9, 0, 1, 65545, 0, 1, 131081, 0, 1, 196617, 0, 1, 262153, 0, 1, 327689, 0, 1, 393225, 0, 1, 458761, 0, 1, 524291, 196608, 0, 524292, 196608, 0, 589827, 196608, 0, 655363, 196608, 0, 720899, 196608, 0, 786435, 196608, 0, 851971, 196608, 0, 917507, 196608, 0, 983043, 196608, 0, 1048579, 196608, 0, 589828, 196608, 0, 655364, 196608, 0, 720900, 196608, 0, 786436, 196608, 0, 851972, 196608, 0, 917508, 196608, 0, 983044, 196608, 0, 1048580, 196608, 0, 524296, 65536, 2, 524295, 65536, 2, 524294, 65536, 2, 524293, 196608, 1, 524297, 65536, 4, 589829, 0, 1, 655365, 0, 1, 720901, 0, 1, 786437, 0, 1, 851973, 0, 1, 917509, 0, 1, 983045, 0, 1, 1048581, 0, 1, -131073, 0, 3, -65537, 65536, 1, -1, 65536, 1, 65535, 65536, 1, 131071, 65536, 1, 196607, 65536, 1, 262143, 65536, 1, 327679, 65536, 1, 393215, 65536, 1, 458751, 65536, 1, 524287, 65536, 1, 524288, 65536, 2, 524289, 65536, 2, 524290, 262144, 1, 589826, 65536, 1, 655362, 65536, 1, 720898, 65536, 1, 786434, 65536, 1, 851970, 65536, 1, 917506, 65536, 1, 983042, 65536, 1, 1048578, 65536, 1, 589823, 0, 4) diff --git a/Levels/Tileset1.png b/Levels/Tileset1.png new file mode 100644 index 0000000000000000000000000000000000000000..4af7bcb43c459b4274e7ee300365885aaab305a3 GIT binary patch literal 3656 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 diff --git a/icon.svg.import b/icon.svg.import new file mode 100644 index 0000000..6762883 --- /dev/null +++ b/icon.svg.import @@ -0,0 +1,37 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://bbepv33i5ysr1" +path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://icon.svg" +dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"] + +[params] + +compress/mode=0 +compress/lossy_quality=0.7 +compress/hdr_compression=1 +compress/bptc_ldr=0 +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 +svg/scale=1.0 +editor/scale_with_editor_scale=false +editor/convert_colors_with_editor_theme=false diff --git a/project.godot b/project.godot new file mode 100644 index 0000000..c4d34e0 --- /dev/null +++ b/project.godot @@ -0,0 +1,71 @@ +; 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=5 + +[application] + +config/name="TowerSprintRedo2" +run/main_scene="res://Game Manager/game_manager.tscn" +config/features=PackedStringArray("4.0", "GL Compatibility") +config/icon="res://icon.svg" + +[display] + +window/stretch/scale=2.0 + +[editor] + +export/convert_text_resources_to_binary=true + +[input] + +print_pos={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":81,"unicode":0,"echo":false,"script":null) +] +} +speed_up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194443,"unicode":0,"echo":false,"script":null) +] +} +attack={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":70,"unicode":0,"echo":false,"script":null) +] +} +right={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"unicode":0,"echo":false,"script":null) +] +} +left={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"unicode":0,"echo":false,"script":null) +] +} +down={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"unicode":0,"echo":false,"script":null) +] +} +up={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"unicode":0,"echo":false,"script":null) +] +} +show_inventory={ +"deadzone": 0.5, +"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":0,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194306,"unicode":0,"echo":false,"script":null) +] +} + +[rendering] + +renderer/rendering_method="gl_compatibility"