[gd_scene load_steps=19 format=3 uid="uid://dgvkijfxrrwi7"] [ext_resource type="Script" uid="uid://dq0n3yw7j5s2a" path="res://player.gd" id="1_onrkg"] [ext_resource type="Texture2D" uid="uid://b6fqefcnd03b0" path="res://tangankiriplayer.png" id="2_2hs0m"] [ext_resource type="PackedScene" uid="uid://ck6kbxrx52wkf" path="res://pelururifle.tscn" id="2_dw050"] [ext_resource type="Texture2D" uid="uid://bn5n01mxg83mv" path="res://badanplayer.png" id="3_1jxqw"] [ext_resource type="Texture2D" uid="uid://eyy6hfyfx76b" path="res://kakiplayer.png" id="4_dw050"] [ext_resource type="Texture2D" uid="uid://cdmbgd4215t31" path="res://tangankananplayer.png" id="5_b26j0"] [ext_resource type="Texture2D" uid="uid://beh5rauhuprdw" path="res://pisau.png" id="5_n7ghd"] [ext_resource type="Texture2D" uid="uid://buqq1awob4glc" path="res://kepalaplayer.png" id="6_n7ghd"] [ext_resource type="Texture2D" uid="uid://c1af34nyil40c" path="res://rifle-m4a1-transparent-background_559680-5-removebg-preview.png" id="7_1jxqw"] [ext_resource type="AudioStream" uid="uid://c5u1rksybld8o" path="res://gunshot-sound-effect_iQJEaqAs.ogg" id="9_b26j0"] [sub_resource type="RectangleShape2D" id="RectangleShape2D_onrkg"] size = Vector2(105, 196.25) [sub_resource type="Animation" id="Animation_1jxqw"] length = 0.001 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Visual/kepala:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Visual/badan:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(1.0000305, 7.1054274e-15)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Visual/tangankiri:position") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(17, 4)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Visual/tangankanan:position") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(-26.000004, 3.9999998)] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("Visual/kakikanan:position") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(0, 0)] } tracks/5/type = "value" tracks/5/imported = false tracks/5/enabled = true tracks/5/path = NodePath("Visual/kakikiri:position") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(0, 0)] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true tracks/6/path = NodePath("Visual/tangankiri:rotation") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [0.0] } tracks/7/type = "value" tracks/7/imported = false tracks/7/enabled = true tracks/7/path = NodePath("Visual/tangankanan:rotation") tracks/7/interp = 1 tracks/7/loop_wrap = true tracks/7/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [0.0] } tracks/8/type = "value" tracks/8/imported = false tracks/8/enabled = true tracks/8/path = NodePath("Visual/senjata:position") tracks/8/interp = 1 tracks/8/loop_wrap = true tracks/8/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(46, 12)] } tracks/9/type = "value" tracks/9/imported = false tracks/9/enabled = true tracks/9/path = NodePath("Visual/pisau:position") tracks/9/interp = 1 tracks/9/loop_wrap = true tracks/9/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(-8, 42.000015)] } tracks/10/type = "value" tracks/10/imported = false tracks/10/enabled = true tracks/10/path = NodePath("Visual/pisau:rotation") tracks/10/interp = 1 tracks/10/loop_wrap = true tracks/10/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [1.5707964] } [sub_resource type="Animation" id="Animation_2hs0m"] resource_name = "idle" tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Visual/kepala:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(0, 5), Vector2(0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Visual/badan:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(1.0000305, 7.1054274e-15), Vector2(1.0000305, 5), Vector2(1.0000305, 0)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Visual/tangankiri:position") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(17, 4), Vector2(17, 9), Vector2(17, 4)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Visual/tangankanan:position") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(-26.000004, 3.9999998), Vector2(-26, 9), Vector2(-26, 4)] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("Visual/senjata:position") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(46, 12), Vector2(46, 21), Vector2(46, 12)] } [sub_resource type="Animation" id="Animation_b26j0"] resource_name = "idle_weapon" tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Visual/kepala:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(0, 5), Vector2(0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Visual/badan:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(1.0000305, 7.1054274e-15), Vector2(1.0000305, 5), Vector2(1.0000305, 0)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Visual/tangankiri:position") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(17, 4), Vector2(17, 9), Vector2(17, 4)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Visual/tangankanan:position") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(-26.000004, 3.9999998), Vector2(-26, 9), Vector2(-26, 4)] } tracks/4/type = "value" tracks/4/imported = false tracks/4/enabled = true tracks/4/path = NodePath("Visual/senjata:position") tracks/4/interp = 1 tracks/4/loop_wrap = true tracks/4/keys = { "times": PackedFloat32Array(0, 0.5, 1), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(46, 12), Vector2(46, 21), Vector2(46, 12)] } tracks/5/type = "value" tracks/5/imported = false tracks/5/enabled = true tracks/5/path = NodePath("Visual/tangankiri:rotation") tracks/5/interp = 1 tracks/5/loop_wrap = true tracks/5/keys = { "times": PackedFloat32Array(1), "transitions": PackedFloat32Array(1), "update": 0, "values": [-1.3962634] } tracks/6/type = "value" tracks/6/imported = false tracks/6/enabled = true tracks/6/path = NodePath("Visual/tangankanan:rotation") tracks/6/interp = 1 tracks/6/loop_wrap = true tracks/6/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [-1.1868238] } [sub_resource type="Animation" id="Animation_dw050"] resource_name = "walk" length = 0.6 loop_mode = 1 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Visual/kakikanan:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.15, 0.45, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(-15, 0), Vector2(15, 0), Vector2(0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Visual/kakikiri:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.15, 0.45, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(15, 0), Vector2(-15, 0), Vector2(0, 0)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Visual/tangankiri:rotation") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0, 0.15, 0.45, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [0.0, 0.5235988, -0.87266463, 0.0] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Visual/tangankanan:rotation") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0, 0.15, 0.45, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [0.0, -0.87266463, 0.5235988, 0.0] } [sub_resource type="Animation" id="Animation_n7ghd"] resource_name = "walk_weapon" length = 0.6 loop_mode = 1 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Visual/kakikanan:position") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.15, 0.45, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(-15, 0), Vector2(15, 0), Vector2(0, 0)] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Visual/kakikiri:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.15, 0.45, 0.6), "transitions": PackedFloat32Array(1, 1, 1, 1), "update": 0, "values": [Vector2(0, 0), Vector2(15, 0), Vector2(-15, 0), Vector2(0, 0)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Visual/tangankanan:rotation") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [-1.1868238] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Visual/tangankiri:rotation") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [-1.3962634] } [sub_resource type="Animation" id="Animation_nvl01"] resource_name = "tusuk" length = 0.6 tracks/0/type = "value" tracks/0/imported = false tracks/0/enabled = true tracks/0/path = NodePath("Visual/tangankanan:rotation") tracks/0/interp = 1 tracks/0/loop_wrap = true tracks/0/keys = { "times": PackedFloat32Array(0, 0.3, 0.6), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [0.0, -1.134464, 0.0] } tracks/1/type = "value" tracks/1/imported = false tracks/1/enabled = true tracks/1/path = NodePath("Visual/pisau:position") tracks/1/interp = 1 tracks/1/loop_wrap = true tracks/1/keys = { "times": PackedFloat32Array(0, 0.3, 0.6), "transitions": PackedFloat32Array(1, 1, 1), "update": 0, "values": [Vector2(-8, 42.000015), Vector2(32, 25), Vector2(-8, 42)] } tracks/2/type = "value" tracks/2/imported = false tracks/2/enabled = true tracks/2/path = NodePath("Visual/tangankanan:position") tracks/2/interp = 1 tracks/2/loop_wrap = true tracks/2/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [Vector2(-26.000004, 3.9999998)] } tracks/3/type = "value" tracks/3/imported = false tracks/3/enabled = true tracks/3/path = NodePath("Visual/pisau:rotation") tracks/3/interp = 1 tracks/3/loop_wrap = true tracks/3/keys = { "times": PackedFloat32Array(0), "transitions": PackedFloat32Array(1), "update": 0, "values": [1.5707964] } [sub_resource type="AnimationLibrary" id="AnimationLibrary_dw050"] _data = { &"RESET": SubResource("Animation_1jxqw"), &"idle": SubResource("Animation_2hs0m"), &"idle_weapon": SubResource("Animation_b26j0"), &"tusuk": SubResource("Animation_nvl01"), &"walk": SubResource("Animation_dw050"), &"walk_weapon": SubResource("Animation_n7ghd") } [node name="Player" type="CharacterBody2D" groups=["pemain"]] position = Vector2(2, 0) script = ExtResource("1_onrkg") peluru_scene = ExtResource("2_dw050") SPEED = 1000.0 [node name="CollisionShape2D" type="CollisionShape2D" parent="."] position = Vector2(1, -0.125) shape = SubResource("RectangleShape2D_onrkg") [node name="Camera2D" type="Camera2D" parent="."] position = Vector2(432, -106) zoom = Vector2(0.8, 0.8) [node name="Visual" type="Node2D" parent="."] [node name="tangankiri" type="Sprite2D" parent="Visual"] position = Vector2(17, 4) scale = Vector2(0.9594595, 0.8023437) texture = ExtResource("2_2hs0m") offset = Vector2(-16, -15) [node name="badan" type="Sprite2D" parent="Visual"] position = Vector2(1.0000305, 7.1054274e-15) scale = Vector2(0.73783785, 0.6953125) texture = ExtResource("3_1jxqw") [node name="pisau" type="Sprite2D" parent="Visual"] position = Vector2(-8, 42.000015) rotation = 1.5707964 scale = Vector2(0.3246753, 0.3037346) texture = ExtResource("5_n7ghd") [node name="senjata" type="Sprite2D" parent="Visual"] position = Vector2(46, 12) scale = Vector2(0.22843452, 0.32366073) texture = ExtResource("7_1jxqw") [node name="muzzle" type="Marker2D" parent="Visual/senjata"] position = Vector2(284.54544, -33.986206) [node name="kakikiri" type="Sprite2D" parent="Visual"] scale = Vector2(0.73175675, 0.9015625) texture = ExtResource("4_dw050") offset = Vector2(35, 0) [node name="kakikanan" type="Sprite2D" parent="Visual"] scale = Vector2(0.73175675, 0.9015625) texture = ExtResource("4_dw050") [node name="tangankanan" type="Sprite2D" parent="Visual"] position = Vector2(-26.000004, 3.9999998) scale = Vector2(1.027027, 0.83125) texture = ExtResource("5_b26j0") offset = Vector2(22, -15) [node name="kepala" type="Sprite2D" parent="Visual"] scale = Vector2(0.8243242, 0.7957031) texture = ExtResource("6_n7ghd") [node name="AnimasiIdle" type="AnimationPlayer" parent="."] libraries = { &"": SubResource("AnimationLibrary_dw050") } autoplay = "idle_weapon" [node name="AudioStreamPlayer" type="AudioStreamPlayer" parent="."] stream = ExtResource("9_b26j0")