diff --git a/components/Debug/TestScene.tscn b/components/Debug/TestScene.tscn index 624bd85..46976ab 100644 --- a/components/Debug/TestScene.tscn +++ b/components/Debug/TestScene.tscn @@ -1,7 +1,9 @@ -[gd_scene load_steps=4 format=3 uid="uid://bnf0o8rmin5v4"] +[gd_scene load_steps=7 format=3 uid="uid://bnf0o8rmin5v4"] [ext_resource type="Shader" path="res://shaders/CooldownProgress.gdshader" id="1_vncc3"] [ext_resource type="Texture2D" uid="uid://16yhngg3jpun" path="res://resources/weapons/purple-crystal.svg" id="2_gmp7s"] +[ext_resource type="Shader" path="res://shaders/Outline.gdshader" id="3_8bxlh"] +[ext_resource type="Texture2D" uid="uid://dkmxuxkwtgbjg" path="res://resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png" id="3_hridd"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_jyenr"] shader = ExtResource("1_vncc3") @@ -11,8 +13,19 @@ shader_parameter/edgeHeight = 0.05 shader_parameter/trailHeight = 0.3 shader_parameter/trailAlpha = 0.5 +[sub_resource type="ShaderMaterial" id="ShaderMaterial_tnwho"] +shader = ExtResource("3_8bxlh") +shader_parameter/width = 10.0 +shader_parameter/outline_color = Color(0.78125, 0, 1, 1) + [node name="Node2D" type="Node2D"] [node name="Sprite2D" type="Sprite2D" parent="."] material = SubResource("ShaderMaterial_jyenr") +position = Vector2(-471, 117) texture = ExtResource("2_gmp7s") + +[node name="7c0f216a29125ca213705918760b1aaa" type="Sprite2D" parent="."] +material = SubResource("ShaderMaterial_tnwho") +position = Vector2(503, 133) +texture = ExtResource("3_hridd") diff --git a/resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png b/resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png new file mode 100644 index 0000000..522a5b3 Binary files /dev/null and b/resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png differ diff --git a/resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png.import b/resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png.import new file mode 100644 index 0000000..deafe9b --- /dev/null +++ b/resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png.import @@ -0,0 +1,34 @@ +[remap] + +importer="texture" +type="CompressedTexture2D" +uid="uid://dkmxuxkwtgbjg" +path="res://.godot/imported/7C0F216A29125CA213705918760B1AAA.png-dc61b6af222e8d9ef347821cadcb5266.ctex" +metadata={ +"vram_texture": false +} + +[deps] + +source_file="res://resources/characters/kernel/7C0F216A29125CA213705918760B1AAA.png" +dest_files=["res://.godot/imported/7C0F216A29125CA213705918760B1AAA.png-dc61b6af222e8d9ef347821cadcb5266.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 diff --git a/scripts/Contents/Characters/KukeMC.gd b/scripts/Contents/Characters/KukeMC.gd index 676111a..cdcaefb 100644 --- a/scripts/Contents/Characters/KukeMC.gd +++ b/scripts/Contents/Characters/KukeMC.gd @@ -1,2 +1,15 @@ extends EntityBase -class_name KukeMC \ No newline at end of file +class_name KukeMC +func ai(): + for bullet in get_tree().get_nodes_in_group("bullet"): + if ( + bullet is LGBTBullet and + bullet.position.distance_to(self.position) < 100 + ): + bullet.tryDestroy() + for entity in get_tree().get_nodes_in_group("bosses"): + if ( + entity.name == "FurryR" and + entity.position.distance_to(self.position) < 100 + ): + entity.takeDamage(114514) \ No newline at end of file diff --git a/shaders/Outline.gdshader b/shaders/Outline.gdshader new file mode 100644 index 0000000..92321cb --- /dev/null +++ b/shaders/Outline.gdshader @@ -0,0 +1,18 @@ +shader_type canvas_item; +uniform float width:hint_range(0.0,30.0); +uniform vec4 outline_color:source_color; +void fragment(){ + float size = width * 1.0 / float(textureSize(TEXTURE,0).x); + vec4 sprite_color = texture(TEXTURE,UV); + float alpha = -8.0 * sprite_color.a; + alpha += texture(TEXTURE,UV + vec2(0.0,-size)).a; + alpha += texture(TEXTURE,UV + vec2(size,-size)).a; + alpha += texture(TEXTURE,UV + vec2(size,0)).a; + alpha += texture(TEXTURE,UV + vec2(size,size)).a; + alpha += texture(TEXTURE,UV + vec2(0.0,size)).a; + alpha += texture(TEXTURE,UV + vec2(-size,size)).a; + alpha += texture(TEXTURE,UV + vec2(-size,0.0)).a; + alpha += texture(TEXTURE,UV + vec2(-size,-size)).a; + vec4 final_color = mix(sprite_color,outline_color,clamp(alpha,0.0,1.0)); + COLOR = vec4(final_color.rgb,clamp(abs(alpha) + sprite_color.a,0.0,1.0)); +} \ No newline at end of file