7-9-25 6:00pm7-9-25 6:00pm7-9-25 6:00pm7-9-25 6:00pm7-9-25 6:00pm7-9-25
6:00pm7-9-25 6:00pm7-9-25 6:00pm7-9-25 6:00pm
58
Gameplay/Cog.cs
Normal file
@@ -0,0 +1,58 @@
|
||||
using Godot;
|
||||
using System;
|
||||
|
||||
public partial class Cog : Node2D
|
||||
{
|
||||
[Export]
|
||||
public int Aptitude = 10, Agility = 10, Ardor = 10, Accuity = 10, Awareness = 10, Appeal = 10;
|
||||
|
||||
public bool _dead;
|
||||
public int _health, _healthMax, _energy, _energyMax, _stamina, _staminaMax, _burden, _turnBandwidth, _turnBandwidthMax, _battleBandwidth, _criticalChance;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
_dead = false;
|
||||
_health = Ardor * 12;
|
||||
_healthMax = _health;
|
||||
_energy = Accuity * 12;
|
||||
_energyMax = _energy;
|
||||
_stamina = Agility * 12;
|
||||
_staminaMax = _stamina;
|
||||
_burden = Appeal / 12;
|
||||
_turnBandwidth = (int)(Awareness * 2 / 3);
|
||||
_turnBandwidthMax = _turnBandwidth;
|
||||
_battleBandwidth = _turnBandwidthMax * 4;
|
||||
_criticalChance = 10;
|
||||
|
||||
}
|
||||
|
||||
public void Attack(Marble target)
|
||||
{
|
||||
Marble marble = GetNode<Marble>("Marble");
|
||||
if (marble.Launched)
|
||||
{
|
||||
target.DefenseChange(-3);
|
||||
}
|
||||
}
|
||||
|
||||
public void HealthChange(int change)
|
||||
{
|
||||
_health += change;
|
||||
if (_health < 0)
|
||||
{
|
||||
_dead = true;
|
||||
}
|
||||
}
|
||||
|
||||
public void HoldMarble()
|
||||
{
|
||||
Marble marble = GetNode<Marble>("Marble");
|
||||
marble.Holding = true;
|
||||
}
|
||||
|
||||
public void PlaceMarble(Vector2 position)
|
||||
{
|
||||
Marble marble = GetNode<Marble>("Marble");
|
||||
marble.Start(position);
|
||||
}
|
||||
}
|
||||
1
Gameplay/Cog.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://b8ppwhc4hl0uk
|
||||
@@ -12,13 +12,12 @@ public partial class Main : Node
|
||||
public void NewGame()
|
||||
{
|
||||
//_score = 0;
|
||||
|
||||
var player = GetNode<Marble>("Marble");
|
||||
var startPosition = GetNode<Marker2D>("StartPosition");
|
||||
player.Start(startPosition.Position);
|
||||
var player2 = GetNode<Marble>("Marble2");
|
||||
var startPosition2 = GetNode<Marker2D>("StartPosition2");
|
||||
player2.Start(startPosition2.Position);
|
||||
Marker2D enemyStart = GetNode<Marker2D>("EnemyStart");
|
||||
Cog enemy = GetNode<Cog>("Enemy");
|
||||
enemy.PlaceMarble(enemyStart.Position);
|
||||
|
||||
Cog player = GetNode<Cog>("Player");
|
||||
player.HoldMarble();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -6,63 +6,77 @@ public partial class Marble : RigidBody2D
|
||||
// Don't forget to rebuild the project so the editor knows about the new signal.
|
||||
|
||||
[Signal]
|
||||
public delegate void HitEventHandler();
|
||||
public delegate void HoverEventHandler(bool tf = true);
|
||||
[Signal]
|
||||
public delegate void HoverEventHandler();
|
||||
public delegate void SelectEventHandler(bool tf = true);
|
||||
[Signal]
|
||||
public delegate void HoverFalseEventHandler();
|
||||
public delegate void AimEventHandler(bool tf = true);
|
||||
[Signal]
|
||||
public delegate void SelectEventHandler();
|
||||
public delegate void LaunchEventHandler(bool tf = true);
|
||||
[Signal]
|
||||
public delegate void SelectFalseEventHandler();
|
||||
public delegate void MoveEventHandler(bool tf = true);
|
||||
[Signal]
|
||||
public delegate void AimEventHandler();
|
||||
public delegate void BumpMarbleEventHandler(Marble marble);
|
||||
[Signal]
|
||||
public delegate void AimFalseEventHandler();
|
||||
[Signal]
|
||||
public delegate void LaunchEventHandler();
|
||||
[Signal]
|
||||
public delegate void MoveEventHandler();
|
||||
[Signal]
|
||||
public delegate void StopEventHandler();
|
||||
public delegate void DefenseDownEventHandler(int damage);
|
||||
|
||||
[Export]
|
||||
public int Speed { get; set; } = 400; // How fast the player will move (pixels/sec).
|
||||
|
||||
public bool Hovered = false, Selected = false, Aimed = false, Launched = false, Moving = false;
|
||||
public bool Holding = false, Placed = false, Hovered = false, Selected = false, Aimed = false, Launched = false, Moving = false;
|
||||
[Export]
|
||||
public int Defense = 10, Speed = 400;
|
||||
[Export]
|
||||
public Vector2 Force = Vector2.Zero, Velocity = Vector2.Zero;
|
||||
[Export]
|
||||
public Vector2 ScreenSize; // Size of the game window.
|
||||
|
||||
public int _defenseMax;
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
ScreenSize = GetViewportRect().Size;
|
||||
_defenseMax = Defense;
|
||||
|
||||
//Hide();
|
||||
}
|
||||
|
||||
public override void _PhysicsProcess(double delta) //THIS IS LIKE THE UPDATE FUNCTION
|
||||
{
|
||||
TrySelect();
|
||||
TryAim();
|
||||
TryLaunch();
|
||||
TryMovement(delta);
|
||||
|
||||
if (Placed)
|
||||
{
|
||||
TrySelect();
|
||||
TryAim();
|
||||
TryLaunch();
|
||||
TryMovement(delta);
|
||||
}
|
||||
else if (Holding)
|
||||
{
|
||||
GetNode<CollisionShape2D>("Bounds").Disabled = true;
|
||||
Position = GetGlobalMousePosition();
|
||||
if (Input.IsActionJustReleased("left_click"))
|
||||
{
|
||||
Start(Position);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void ProcessOnBump(Node2D body)
|
||||
public void DefenseChange(int change)
|
||||
{
|
||||
GD.Print(body);
|
||||
}
|
||||
|
||||
public void ProcessOnMovement()
|
||||
{
|
||||
|
||||
Defense += change;
|
||||
if (Defense < 0)
|
||||
{
|
||||
EmitSignal(SignalName.DefenseDown, Defense); // transfer damage over 0 to player
|
||||
Defense = 0; // set defense back to 0
|
||||
}
|
||||
}
|
||||
|
||||
public void Start(Vector2 position)
|
||||
{
|
||||
|
||||
Holding = false;
|
||||
Placed = true;
|
||||
Position = position;
|
||||
Show();
|
||||
GetNode<CollisionShape2D>("CollisionShape2D").Disabled = false;
|
||||
GetNode<CollisionShape2D>("Bounds").Disabled = false;
|
||||
}
|
||||
|
||||
public void TryAim()
|
||||
@@ -77,18 +91,19 @@ public partial class Marble : RigidBody2D
|
||||
{
|
||||
Vector2 mousePosition = GetGlobalMousePosition();
|
||||
Force = Position - mousePosition;
|
||||
//Rotation = Force.Angle() - 180; // if i want to implement this i need to work out the shader to accept rotation
|
||||
|
||||
if (!Input.IsActionPressed("left_click"))
|
||||
{
|
||||
if (!Hovered)
|
||||
{
|
||||
Launched = true;
|
||||
EmitSignal(SignalName.SelectFalse);
|
||||
EmitSignal(SignalName.Select, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
Aimed = false;
|
||||
EmitSignal(SignalName.AimFalse);
|
||||
EmitSignal(SignalName.Aim, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -99,10 +114,10 @@ public partial class Marble : RigidBody2D
|
||||
if (Aimed && Input.IsActionJustReleased("left_click"))
|
||||
{
|
||||
Selected = false;
|
||||
EmitSignal(SignalName.SelectFalse);
|
||||
EmitSignal(SignalName.Select, false);
|
||||
|
||||
Aimed = false;
|
||||
EmitSignal(SignalName.AimFalse);
|
||||
EmitSignal(SignalName.Aim, false);
|
||||
|
||||
Launched = true;
|
||||
EmitSignal(SignalName.Launch);
|
||||
@@ -124,12 +139,10 @@ public partial class Marble : RigidBody2D
|
||||
}
|
||||
}
|
||||
if (Moving)
|
||||
{
|
||||
ProcessOnMovement();
|
||||
|
||||
{
|
||||
Vector2 Scroll = -LinearVelocity / 100;
|
||||
|
||||
Sprite2D sprite = (Sprite2D)GetNode("Sprite2D");
|
||||
Sprite2D sprite = (Sprite2D)GetNode("Texture");
|
||||
ShaderMaterial material = (ShaderMaterial)sprite.Material;
|
||||
|
||||
float CurrentScrollX = (float)material.GetShaderParameter("scroll_x");
|
||||
@@ -140,8 +153,9 @@ public partial class Marble : RigidBody2D
|
||||
|
||||
if (Sleeping)
|
||||
{
|
||||
Launched = false;
|
||||
Moving = false;
|
||||
EmitSignal(SignalName.Stop);
|
||||
EmitSignal(SignalName.Move, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -164,7 +178,7 @@ public partial class Marble : RigidBody2D
|
||||
if (Input.IsActionJustPressed("left_click") && Selected)
|
||||
{
|
||||
Selected = false;
|
||||
EmitSignal(SignalName.SelectFalse);
|
||||
EmitSignal(SignalName.Select, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -179,16 +193,14 @@ public partial class Marble : RigidBody2D
|
||||
private void OnMouseExited()
|
||||
{
|
||||
Hovered = false;
|
||||
EmitSignal(SignalName.HoverFalse);
|
||||
EmitSignal(SignalName.Hover, false);
|
||||
}
|
||||
|
||||
private void OnBodyEntered(Node2D body)
|
||||
{
|
||||
if (body.GetType() == typeof(Marble))
|
||||
{
|
||||
Marble marble = (Marble)body;
|
||||
ProcessOnBump(marble);
|
||||
marble.ProcessOnBump(this);
|
||||
EmitSignal(SignalName.BumpMarble, (Marble)body);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
15
Gameplay/cog.tscn
Normal file
@@ -0,0 +1,15 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://s0dbttuctm8"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b8ppwhc4hl0uk" path="res://Gameplay/Cog.cs" id="1_tsf7f"]
|
||||
[ext_resource type="PackedScene" uid="uid://c8n4lue2bn25n" path="res://Gameplay/marble.tscn" id="2_unqi5"]
|
||||
|
||||
[node name="Cog" type="Node2D"]
|
||||
script = ExtResource("1_tsf7f")
|
||||
|
||||
[node name="Marble" parent="." instance=ExtResource("2_unqi5")]
|
||||
|
||||
[node name="Picture" type="Sprite2D" parent="."]
|
||||
visible = false
|
||||
|
||||
[connection signal="BumpMarble" from="Marble" to="." method="Attack"]
|
||||
[connection signal="DefenseDown" from="Marble" to="." method="HealthChange"]
|
||||
141
Gameplay/cog_hud.tscn
Normal file
@@ -0,0 +1,141 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://cw2ypbamocty5"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dy4lmwn1dit26" path="res://art/shade.png" id="1_coxn2"]
|
||||
|
||||
[node name="CogHud" type="CanvasLayer"]
|
||||
|
||||
[node name="Background" type="Sprite2D" parent="."]
|
||||
position = Vector2(98, -128)
|
||||
scale = Vector2(0.765625, 1)
|
||||
texture = ExtResource("1_coxn2")
|
||||
|
||||
[node name="CogName" type="RichTextLabel" parent="Background"]
|
||||
offset_left = -111.02
|
||||
offset_top = -112.0
|
||||
offset_right = 99.9796
|
||||
offset_bottom = -89.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Cog Name"
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="Background"]
|
||||
position = Vector2(-7.62939e-06, -31)
|
||||
scale = Vector2(0.428571, 0.328125)
|
||||
texture = ExtResource("1_coxn2")
|
||||
|
||||
[node name="HealthLabel" type="RichTextLabel" parent="Background"]
|
||||
offset_left = -111.02
|
||||
offset_top = 23.0
|
||||
offset_right = -59.0204
|
||||
offset_bottom = 46.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Health"
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="EnergyLabel" type="RichTextLabel" parent="Background"]
|
||||
offset_left = -111.02
|
||||
offset_top = 53.0
|
||||
offset_right = -58.0204
|
||||
offset_bottom = 76.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Energy"
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="BandwidthLabel" type="RichTextLabel" parent="Background"]
|
||||
offset_left = -111.02
|
||||
offset_top = 83.0
|
||||
offset_right = -27.0204
|
||||
offset_bottom = 106.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Bandwidth"
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="HealthValue" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 1.30611
|
||||
offset_top = 23.0
|
||||
offset_right = 51.3061
|
||||
offset_bottom = 46.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Value"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="EnergyValue" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 1.30611
|
||||
offset_top = 53.0
|
||||
offset_right = 51.3061
|
||||
offset_bottom = 76.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Value"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="BandwidthValue" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 1.30611
|
||||
offset_top = 83.0
|
||||
offset_right = 51.3061
|
||||
offset_bottom = 106.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Value"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="HealthMax" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 60.0816
|
||||
offset_top = 23.0
|
||||
offset_right = 110.082
|
||||
offset_bottom = 46.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Max"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="EnergyMax" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 60.0816
|
||||
offset_top = 53.0
|
||||
offset_right = 110.082
|
||||
offset_bottom = 76.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Max"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="BandwidthMax" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 60.0816
|
||||
offset_top = 83.0
|
||||
offset_right = 110.082
|
||||
offset_bottom = 106.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "Max"
|
||||
horizontal_alignment = 2
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="HealthDivider" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 39.1837
|
||||
offset_top = 23.0
|
||||
offset_right = 89.1837
|
||||
offset_bottom = 46.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "/"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="EnergyDivider" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 39.1837
|
||||
offset_top = 53.0
|
||||
offset_right = 89.1837
|
||||
offset_bottom = 76.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "/"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
|
||||
[node name="BandwidthDivider" type="RichTextLabel" parent="Background"]
|
||||
offset_left = 39.1837
|
||||
offset_top = 83.0
|
||||
offset_right = 89.1837
|
||||
offset_bottom = 106.0
|
||||
theme_override_colors/default_color = Color(0, 0, 0, 1)
|
||||
text = "/"
|
||||
horizontal_alignment = 1
|
||||
vertical_alignment = 1
|
||||
@@ -1,19 +1,14 @@
|
||||
[gd_scene load_steps=3 format=3 uid="uid://yqtgkxjjexag"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://v6ovq4snxruc" path="res://Gameplay/Main.cs" id="1_0xm2m"]
|
||||
[ext_resource type="PackedScene" uid="uid://c8n4lue2bn25n" path="res://Gameplay/marble.tscn" id="2_h2yge"]
|
||||
[ext_resource type="PackedScene" uid="uid://s0dbttuctm8" path="res://Gameplay/cog.tscn" id="2_7rujl"]
|
||||
|
||||
[node name="Main" type="Node"]
|
||||
script = ExtResource("1_0xm2m")
|
||||
|
||||
[node name="Marble" parent="." instance=ExtResource("2_h2yge")]
|
||||
[node name="Player" parent="." instance=ExtResource("2_7rujl")]
|
||||
|
||||
[node name="StartPosition" type="Marker2D" parent="."]
|
||||
position = Vector2(200, 200)
|
||||
[node name="Enemy" parent="." instance=ExtResource("2_7rujl")]
|
||||
|
||||
[node name="Marble2" parent="." instance=ExtResource("2_h2yge")]
|
||||
|
||||
[node name="StartPosition2" type="Marker2D" parent="."]
|
||||
position = Vector2(400, 200)
|
||||
|
||||
[connection signal="Hit" from="Marble" to="." method="GameOver"]
|
||||
[node name="EnemyStart" type="Marker2D" parent="."]
|
||||
position = Vector2(837, 295)
|
||||
|
||||
@@ -1,12 +1,10 @@
|
||||
[gd_scene load_steps=12 format=3 uid="uid://c8n4lue2bn25n"]
|
||||
[gd_scene load_steps=9 format=3 uid="uid://c8n4lue2bn25n"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://b1bipn8tmpggr" path="res://Gameplay/Marble.cs" id="1_7ritg"]
|
||||
[ext_resource type="Shader" uid="uid://b6vvt5o0008ob" path="res://shaders/globe.gdshader" id="2_6v01e"]
|
||||
[ext_resource type="Texture2D" uid="uid://bigvacjklr7in" path="res://art/playerGrey_up1.png" id="2_76m5q"]
|
||||
[ext_resource type="Texture2D" uid="uid://bskloxogmm7ox" path="res://art/playerGrey_up2.png" id="3_4rms2"]
|
||||
[ext_resource type="Texture2D" uid="uid://dkduh13hcei0w" path="res://art/fruit.png" id="3_6v01e"]
|
||||
[ext_resource type="Texture2D" uid="uid://cww2tug20ksn3" path="res://art/playerGrey_walk1.png" id="4_iy80h"]
|
||||
[ext_resource type="Texture2D" uid="uid://csm4ru8wkc2cb" path="res://art/playerGrey_walk2.png" id="5_ryns1"]
|
||||
[ext_resource type="Texture2D" uid="uid://dd3s6x86dgxem" path="res://art/checkerboard.png" id="3_o5glk"]
|
||||
[ext_resource type="Texture2D" uid="uid://duy62uv828xcg" path="res://art/shadow.png" id="4_803qd"]
|
||||
[ext_resource type="Texture2D" uid="uid://c4jron4g4jalp" path="res://art/shine.png" id="5_fkve3"]
|
||||
|
||||
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_803qd"]
|
||||
bounce = 1.0
|
||||
@@ -18,33 +16,8 @@ shader_parameter/scroll_x = 0.0
|
||||
shader_parameter/scroll_y = 0.0
|
||||
shader_parameter/globe_magnitude = 1.0
|
||||
|
||||
[sub_resource type="SpriteFrames" id="SpriteFrames_n7ghd"]
|
||||
animations = [{
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("2_76m5q")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("3_4rms2")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"up",
|
||||
"speed": 5.0
|
||||
}, {
|
||||
"frames": [{
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("4_iy80h")
|
||||
}, {
|
||||
"duration": 1.0,
|
||||
"texture": ExtResource("5_ryns1")
|
||||
}],
|
||||
"loop": true,
|
||||
"name": &"walk",
|
||||
"speed": 5.0
|
||||
}]
|
||||
|
||||
[sub_resource type="CircleShape2D" id="CircleShape2D_803qd"]
|
||||
radius = 56.0803
|
||||
radius = 60.0
|
||||
|
||||
[node name="Marble" type="RigidBody2D"]
|
||||
input_pickable = true
|
||||
@@ -53,24 +26,27 @@ physics_material_override = SubResource("PhysicsMaterial_803qd")
|
||||
gravity_scale = 0.0
|
||||
contact_monitor = true
|
||||
max_contacts_reported = 1
|
||||
linear_damp = 3.0
|
||||
linear_damp = 2.0
|
||||
script = ExtResource("1_7ritg")
|
||||
metadata/_edit_group_ = true
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="."]
|
||||
[node name="Texture" type="Sprite2D" parent="."]
|
||||
material = SubResource("ShaderMaterial_bdlqm")
|
||||
position = Vector2(0, 1.3113e-06)
|
||||
scale = Vector2(0.0861539, 0.0861539)
|
||||
texture = ExtResource("3_6v01e")
|
||||
scale = Vector2(1.2, 1.2)
|
||||
texture = ExtResource("3_o5glk")
|
||||
|
||||
[node name="AnimatedSprite2D" type="AnimatedSprite2D" parent="."]
|
||||
visible = false
|
||||
position = Vector2(0, 7)
|
||||
scale = Vector2(0.5, 0.5)
|
||||
sprite_frames = SubResource("SpriteFrames_n7ghd")
|
||||
animation = &"walk"
|
||||
[node name="Shadow" type="Sprite2D" parent="Texture"]
|
||||
position = Vector2(0, -1.1708e-06)
|
||||
scale = Vector2(0.390625, 0.390625)
|
||||
texture = ExtResource("4_803qd")
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
|
||||
[node name="Shine" type="Sprite2D" parent="Texture"]
|
||||
position = Vector2(0, -1.1708e-06)
|
||||
scale = Vector2(0.3976, 0.3976)
|
||||
texture = ExtResource("5_fkve3")
|
||||
|
||||
[node name="Bounds" type="CollisionShape2D" parent="."]
|
||||
shape = SubResource("CircleShape2D_803qd")
|
||||
|
||||
[connection signal="body_entered" from="." to="." method="OnBodyEntered"]
|
||||
|
||||
|
Before Width: | Height: | Size: 73 KiB |
@@ -1,34 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cci0uhfbb2mtc"
|
||||
path="res://.godot/imported/SimpleNoiseTexture.png-a19491929d15aa95354e9aac8507d3e4.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/SimpleNoiseTexture.png"
|
||||
dest_files=["res://.godot/imported/SimpleNoiseTexture.png-a19491929d15aa95354e9aac8507d3e4.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
|
||||
BIN
art/ex.png
|
Before Width: | Height: | Size: 1.7 KiB |
BIN
art/example.jpg
|
Before Width: | Height: | Size: 94 KiB |
@@ -1,34 +0,0 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bpvnm47km7j2w"
|
||||
path="res://.godot/imported/example.jpg-9319614e785f83aef7c770b2e4954d69.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/example.jpg"
|
||||
dest_files=["res://.godot/imported/example.jpg-9319614e785f83aef7c770b2e4954d69.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
|
||||
BIN
art/fruit.jpg
|
Before Width: | Height: | Size: 327 KiB |
BIN
art/fruit.png
|
Before Width: | Height: | Size: 2.6 MiB |
BIN
art/shade.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b673y84gue81w"
|
||||
path="res://.godot/imported/tess.jpg-a1625b478265a588029ba1e96005020c.ctex"
|
||||
uid="uid://dy4lmwn1dit26"
|
||||
path="res://.godot/imported/shade.png-bc95b1153444cd1faee072e89ec04e49.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/tess.jpg"
|
||||
dest_files=["res://.godot/imported/tess.jpg-a1625b478265a588029ba1e96005020c.ctex"]
|
||||
source_file="res://art/shade.png"
|
||||
dest_files=["res://.godot/imported/shade.png-bc95b1153444cd1faee072e89ec04e49.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
BIN
art/shadow.png
Normal file
|
After Width: | Height: | Size: 8.3 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b7or7kn3fpypj"
|
||||
path="res://.godot/imported/fruit.jpg-4bdd4d207de39b3f76fba670c9c82bad.ctex"
|
||||
uid="uid://duy62uv828xcg"
|
||||
path="res://.godot/imported/shadow.png-85d72c76b3c4cbd483e4bb2115d7272b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/fruit.jpg"
|
||||
dest_files=["res://.godot/imported/fruit.jpg-4bdd4d207de39b3f76fba670c9c82bad.ctex"]
|
||||
source_file="res://art/shadow.png"
|
||||
dest_files=["res://.godot/imported/shadow.png-85d72c76b3c4cbd483e4bb2115d7272b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
BIN
art/shield.png
Normal file
|
After Width: | Height: | Size: 7.1 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://blrsin0klnylb"
|
||||
path="res://.godot/imported/ex.png-33d756bacda5f665555e9fabd3dc0385.ctex"
|
||||
uid="uid://duf4d01jxuqo8"
|
||||
path="res://.godot/imported/shield.png-c00882da6c2e3ce05f0a46136485cf4b.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/ex.png"
|
||||
dest_files=["res://.godot/imported/ex.png-33d756bacda5f665555e9fabd3dc0385.ctex"]
|
||||
source_file="res://art/shield.png"
|
||||
dest_files=["res://.godot/imported/shield.png-c00882da6c2e3ce05f0a46136485cf4b.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
BIN
art/shine.png
Normal file
|
After Width: | Height: | Size: 6.9 KiB |
@@ -2,16 +2,16 @@
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dkduh13hcei0w"
|
||||
path="res://.godot/imported/fruit.png-86ab3011b3040b74c8a4712f7ad4ee25.ctex"
|
||||
uid="uid://c4jron4g4jalp"
|
||||
path="res://.godot/imported/shine.png-af27c54204b4baeb53b9ff71b4cfa3f1.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://art/fruit.png"
|
||||
dest_files=["res://.godot/imported/fruit.png-86ab3011b3040b74c8a4712f7ad4ee25.ctex"]
|
||||
source_file="res://art/shine.png"
|
||||
dest_files=["res://.godot/imported/shine.png-af27c54204b4baeb53b9ff71b4cfa3f1.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
BIN
art/tess.jpg
|
Before Width: | Height: | Size: 47 KiB |
@@ -1,4 +1,4 @@
|
||||
shader_type spatial;
|
||||
shader_type canvas_item;
|
||||
|
||||
void vertex() {
|
||||
// Called for every vertex the material is visible on.
|
||||
@@ -6,7 +6,7 @@ void vertex() {
|
||||
|
||||
void fragment() {
|
||||
// Called for every pixel the material is visible on.
|
||||
ALBEDO = vec3(1, 0, 0);
|
||||
COLOR = vec4(1, 0, 0, 1);
|
||||
}
|
||||
|
||||
//void light() {
|
||||
|
||||
@@ -3,4 +3,5 @@
|
||||
[ext_resource type="Shader" uid="uid://dvpsalh3o60iu" path="res://shaders/red.gdshader" id="1_ofpe7"]
|
||||
|
||||
[resource]
|
||||
render_priority = 0
|
||||
shader = ExtResource("1_ofpe7")
|
||||
|
||||