Compare commits

...

25 Commits

Author SHA1 Message Date
853960932f Tuesday, 16 September 2025 22:07:13 2025-09-16 22:07:16 -04:00
948e1d3874 Tuesday, 16 September 2025 12:26:13 2025-09-16 12:26:16 -04:00
36ce21cb44 Thursday, 11 September 2025 02:29:56 2025-09-11 02:29:59 -04:00
23700e2bcf Wednesday, 10 September 2025 01:31:36 2025-09-10 01:31:39 -04:00
ac25e55bf3 Wednesday, 27 August 2025 01:54:42 2025-08-27 01:54:43 -04:00
4fe431a8e0 Friday, 22 August 2025 01:17:08 2025-08-22 01:17:10 -04:00
2eb95b18fd Wednesday, 20 August 2025 02:02:40 2025-08-20 02:02:42 -04:00
dfbad40739 Tuesday, 19 August 2025 01:37:27 2025-08-19 01:37:30 -04:00
a47a6331ee Friday, 15 August 2025 23:08:08 2025-08-15 23:08:10 -04:00
8a2ad448fd Friday, 08 August 2025 03:06:08 2025-08-08 03:06:03 -04:00
7d95468603 Friday, 08 August 2025 03:00:40 2025-08-08 03:04:58 -04:00
d00ab15640 Friday, 08 August 2025 02:54:15 2025-08-08 02:54:17 -04:00
4fe9a333d7 Thursday, 07 August 2025 19:00:19 2025-08-07 19:00:24 -04:00
33db2a63a2 Tuesday, 05 August 2025 01:43:58 2025-08-05 01:44:03 -04:00
7f65338679 8-4-25 @ 2:42 am 2025-08-04 02:42:51 -04:00
50e4f8fcb5 8-2-2025 @ 3:51 AM 2025-08-02 03:51:34 -04:00
a8373726f9 7-31-25 @ 3:05AM 2025-07-31 03:05:11 -04:00
0638fc52ec 7-29-25 @ 2:57am 2025-07-29 02:57:11 -04:00
41b5c34e70 7-28-25 @ 11:39pm 2025-07-28 23:39:40 -04:00
f351f0ade9 7-21-25 @ 3:17 am 2025-07-21 03:17:09 -04:00
ea03cc152a 7-19-25 @ 1:16 AM 2025-07-19 01:16:38 -04:00
3884c07811 7-17-25 @ 3:55am 2025-07-17 03:55:30 -04:00
c5795028f0 7-16-25 @ 3:27AM 2025-07-16 03:27:01 -04:00
7c81e03613 7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04am7-15-25@3:04amMerge branch 'main' of https://git.cojoedmo.com/admin/hotdesking 2025-07-15 03:03:46 -04:00
022f0948db 7-15-25@3:02am 2025-07-15 03:02:30 -04:00
158 changed files with 1404 additions and 1794 deletions

View File

@@ -1,91 +0,0 @@
using Godot;
using System;
using System.Collections.Generic;
using System.Linq;
public partial class Actor : Node
{
public bool _available, _hovered, _selected;
public List<Cue> _cues = new();
public Cue _activeCue;
public List<Ball> _balls = new();
public Ball _activeBall;
public static Actor Create(string SCENENAME)
{
PackedScene scene = ResourceLoader.Load<PackedScene>("res://Gameplay/"+SCENENAME+".tscn");
Actor newActor = scene.Instantiate<Actor>();
return newActor;
}
public override void _Ready()
{
Ball newBall = Ball.Create("ball", 0);
AddChild(newBall);
_balls.Add(newBall);
if (_activeBall == null)
{
_activeBall = _balls[0];
}
Cue newCue = Cue.Create("cue");
AddChild(newCue);
_cues.Add(newCue);
if (_activeCue == null)
{
_activeCue = _cues[0];
_activeCue.Shoot += OnCueShoot;
}
}
public override void _Process(double DELTA_)
{
if (!_activeBall._placed)
{
_activeCue.HideCue();
Vector2 mousePosition = GetViewport().GetMousePosition();
GetNode<Marker2D>("StartPosition").Position = mousePosition;
if (Input.IsActionJustReleased("left_click"))
{
_activeBall.Place(GetNode<Marker2D>("StartPosition").Position);
GD.Print(_activeBall.Position);
}
}
else
{
_hovered = _activeBall._hovered;
if (_activeCue._shown)
{
if (!_activeBall._available)
{
_activeCue.HideCue();
}
}
else // (!_activeCue._shown)
{
if (_activeBall._available)
{
_activeCue.ShowCue(_activeBall);
}
}
}
}
//public void ResetCueBall()
//{
//_cueBall = Ball.Create("ball", 0, _startPosition);
//_cueBall.SetName("CueBall");
//AddChild(_cueBall);
//Texture2D image = GD.Load<Texture2D>("res://art/cue_ball.png");
//_cueBall.GetNode<Sprite2D>("Image").Texture = image;
//_cueBall._placed = true;
//_balls = GetTree().GetNodesInGroup("balls").Select(b => (Ball)b).ToList<Ball>();
//}
private void OnCueShoot(Vector2 IMPULSE)
{
_activeBall.ApplyCentralImpulse(IMPULSE);
}
}

View File

@@ -1 +0,0 @@
uid://b4mr2vn8mw6r4

View File

@@ -1,91 +0,0 @@
using Godot;
using System;
public partial class Ball : RigidBody2D
{
public bool _placed, _potted, _available, _hovered, _selected, _aimed, _moving;
public float _moveThreshold = 5.0f;
public static Ball Create(string SCENENAME, int NUMBER)
{
PackedScene scene = ResourceLoader.Load<PackedScene>("res://Gameplay/"+SCENENAME+".tscn");
Ball newBall = scene.Instantiate<Ball>();
string fileName;
if (NUMBER == 0)
{
fileName = "res://art/cue_ball.png";
}
else
{
fileName = "res://art/ball_"+NUMBER+".png";
}
Texture2D image = GD.Load<Texture2D>(fileName);
newBall.GetNode<Sprite2D>("Image").Texture = image;
return newBall;
}
public override void _Ready()
{
SetProcess(false);
_placed = false;
_available = false;
_hovered = false;
_selected = false;
_aimed = false;
_moving = false;
}
public override void _Process(double DELTA_)
{
if (LinearVelocity.Length() > 0 && LinearVelocity.Length() < _moveThreshold)
{
Sleeping = true;
if (_moving)
{
_moving = false;
}
}
else if (LinearVelocity.Length() >= _moveThreshold)
{
GD.Print(Position);
if (!_moving)
{
_moving = true;
}
}
if (!Globals.Instance._anyMovement)
{
if (!_available)
{
_available = true;
}
}
else
{
if (_available)
{
_available = false;
}
}
}
public void Place(Vector2 POSITION)
{
_placed = true;
Position = POSITION;
SetProcess(true);
}
private void OnMouseEntered()
{
_hovered = true;
}
private void OnMouseExited()
{
_hovered = false;
}
}

View File

@@ -1 +0,0 @@
uid://dgdxx8tceiljg

View File

@@ -5,111 +5,21 @@ using System.Linq;
public partial class Battle : Node
{
[Signal]
public delegate void SetCurrentEventHandler(Battle BATTLE);
//[Signal]
//public delegate void DetectMovementEventHandler(bool BOOL);
public bool _current;
public Vector2 _startPosition = new Vector2(890, 340);
public Player _player;
public List<Sprite2D> _potted = new();
public List<Ball> _balls;
public override void _Ready()
{
_player = GetNode<Player>("Player");
Start();
List<Area2D> pockets = GetNode<Table>("Table").GetChildren()
.Where(n => n.GetName().ToString().ToLower().Contains("pocket"))
.Select(n => (Area2D)n)
.ToList<Area2D>();
for (int i = 0; i < pockets.Count; i++)
{
pockets[i].BodyEntered += PottedBall;
}
_balls = GetTree().GetNodesInGroup("balls").Select(b => (Ball)b).ToList<Ball>();
}
public override void _Process(double DELTA_)
{
CheckMovement();
}
public void GenerateBalls()
{
int count = 1;
int rows = 5;
int diameter = 36;
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < rows; j++)
{
Vector2 position = new Vector2(250 + (i*(diameter)), 267 + (j*(diameter)) + (i*(diameter / 2)));
Ball ball = Ball.Create("ball", count);
ball.Place(position);
AddChild(ball);
count += 1;
}
rows -= 1;
}
}
public void CheckMovement()
{
bool movementCheck = _balls.Any(b => b._moving && b._placed);
if (movementCheck)
{
if (!Globals.Instance._anyMovement)
{
Globals.Instance._anyMovement = true;
//EmitSignal(SignalName.DetectMovement, true);
}
}
else
{
if (Globals.Instance._anyMovement)
{
Globals.Instance._anyMovement = false;
//EmitSignal(SignalName.DetectMovement, false);
}
}
}
public void PottedBall(Node2D BODY)
{
if (BODY.GetType() != typeof(Ball)){
return;
}
if (BODY == _player._actor._activeBall)
{
_player._actor._activeBall._potted = true;
_player._actor._activeBall._placed = false;
}
else
{
Sprite2D ballSprite = new Sprite2D();
AddChild(ballSprite);
ballSprite.Texture = BODY.GetNode<Sprite2D>("Image").Texture;
_potted.Add(ballSprite);
ballSprite.Position = new Vector2(50 * _potted.Count, 725);
((Ball)BODY)._placed = false;
((Ball)BODY)._potted = true;
BODY.QueueFree();
}
}
public void Start()
{
_current = true;
GenerateBalls();
EmitSignal(SignalName.SetCurrent, this);
}
}

7
Gameplay/Cell.cs Normal file
View File

@@ -0,0 +1,7 @@
using Godot;
using System;
public partial class Cell : Sprite2D
{
public int _row, _column, _size;
}

1
Gameplay/Cell.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://cmw4772lmwms0

30
Gameplay/Condition.cs Normal file
View File

@@ -0,0 +1,30 @@
using Godot;
using System;
using System.Collections.Generic;
public partial class Condition : Node
{
public bool _canExpire, _expired;
public int _countdown;
public Timer _timer = new();
public Node _target;
public List<Trigger.On> _triggers = new();
public List<Trigger.On> _expirations = new();
public Node2D _owner;
public Condition(Node2D OWNER)
{
_owner = OWNER;
}
public virtual void Fire()
{
}
public virtual void Target(Node TARGET)
{
_target = TARGET;
}
}

View File

@@ -0,0 +1 @@
uid://vj2qucjwah5y

View File

@@ -1,75 +0,0 @@
using Godot;
using System;
public partial class Cue : Sprite2D
{
[Signal]
public delegate void ShootEventHandler(Vector2 IMPULSE);
public bool _shown;
public int _powerDirection = 1;
public float _power = 0.0f, _maxPower = 8.0f;
public ProgressBar _progressBar;
public static Cue Create(string SCENENAME)
{
PackedScene scene = ResourceLoader.Load<PackedScene>("res://Gameplay/"+SCENENAME+".tscn");
Cue newCue = scene.Instantiate<Cue>();
Texture2D image = GD.Load<Texture2D>("res://art/cue.png");
newCue.Texture = image;
return newCue;
}
public override void _Ready()
{
//_progressBar = GetParent().GetNode<ProgressBar>("PowerBar");
}
public override void _Process(double DELTA_)
{
Vector2 mousePosition = GetViewport().GetMousePosition();
LookAt(mousePosition);
if (Input.IsActionPressed("left_click"))
{
_power += 0.1f * _powerDirection;
if (_power >= _maxPower)
{
_powerDirection = -1;
}
else if (_power <= 0)
{
_powerDirection = 1;
}
}
else
{
if (_power > 0f)
{
_powerDirection = 1;
Vector2 direction = mousePosition - Position;
EmitSignal(SignalName.Shoot, _power * direction);
_power = 0;
}
}
}
public void HideCue()
{
_shown = false;
SetProcess(false);
Hide();
//_progressBar.Hide();
}
public void ShowCue(Ball CUEBALL)
{
_shown = true;
SetProcess(true);
Position = CUEBALL.Position;
//_progressBar.Position = new Vector2(CUEBALL.Position.X - _progressBar.Size.X / 2, CUEBALL.Position.Y + _progressBar.Size.Y / 2);
Show();
//_progressBar.Show();
}
}

View File

@@ -1 +0,0 @@
uid://ian15gmia0uv

78
Gameplay/Desk.cs Normal file
View File

@@ -0,0 +1,78 @@
using Godot;
using System;
using System.Collections.Generic;
public partial class Desk : Node2D
{
public Vector2 _topLeft, _cellDimensions, _gridDimensions;
public Cell _light, _dark;
Node2D _grid;
public override void _Ready()
{
_grid = GetNode<Node2D>("Cells");
_light = GetNode<Cell>("Light");
_dark = GetNode<Cell>("Dark");
}
public Cell GetCellFromAddress(int ROW, int COLUMN)
{
if (_grid.HasNode("R" + ROW))
{
Node2D row = _grid.GetNode<Node2D>("R" + ROW);
if (row.HasNode("C" + COLUMN))
{
Cell column = row.GetNode<Cell>("C" + COLUMN);
return column;
}
}
return null;
}
public Vector2 GetPositionFromAddress(int ROW, int COLUMN)
{
Cell cell = GetCellFromAddress(ROW, COLUMN);
if (cell != null)
{
return cell.GlobalPosition;
}
return new Vector2(-1, -1);
}
public void Setup(int ROWS, int COLUMNS, int CELLSIZE)
{
_gridDimensions = new Vector2(COLUMNS, ROWS);
_cellDimensions = new Vector2(CELLSIZE, CELLSIZE);
_light.Scale = _cellDimensions / _light.Texture.GetSize();
_dark.Scale = _cellDimensions / _dark.Texture.GetSize();
_topLeft = Globals.Instance._screenCenter - _cellDimensions * _gridDimensions / 2 + _cellDimensions / 2;
Vector2 position;
Node2D row;
Cell column;
for (int i = 0; i < _gridDimensions.Y; i++)
{
if (i <= _grid.GetChildCount())
{
row = new();
row.Name = "R" + (i + 1);
_grid.AddChild(row);
}
for (int j = 0; j < _gridDimensions.X; j++)
{
position = _topLeft + new Vector2(_cellDimensions.X * j, _cellDimensions.Y * i);
column = (Cell)((i + j) % 2 == 0 ? _light : _dark).Duplicate();
column._size = (int)(column.Texture.GetSize().Y * column.Scale.Y);
column.Name = "C" + (j + 1);
column.GlobalPosition = position;
column.Visible = true;
column._row = i + 1;
column._column = j + 1;
row = _grid.GetNode<Node2D>("R" + (i + 1));
row.AddChild(column);
}
}
}
}

1
Gameplay/Desk.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://pxi753iie75t

View File

@@ -1,15 +1,24 @@
using Godot;
using System;
using System.Collections.Generic;
public partial class Globals : Node
{
public static Globals Instance;
public bool _anyMovement;
public Battle _currentBattle;
public bool _battleRunning = false;
public Viewport _viewport;
public Vector2 _screenSize;
public Vector2 _screenCenter;
public Random _random = new();
public PackedScene _workerScene = ResourceLoader.Load<PackedScene>("res://Gameplay/worker.tscn");
public PackedScene _tchotchkeScene = ResourceLoader.Load<PackedScene>("res://Gameplay/tchotchke.tscn");
public override void _Ready()
{
Instance = this;
_viewport = GetViewport();
_screenSize = _viewport.GetVisibleRect().Size;
_screenCenter = _screenSize / 2;
}
}

View File

@@ -3,8 +3,30 @@ using System;
public partial class Main : Node
{
public Battle _currentBattle;
public Manager _player;
public override void _Ready()
{
Globals.Instance._screenSize = GetViewport().GetVisibleRect().Size;
Globals.Instance._screenCenter = new Vector2(Globals.Instance._screenSize.X / 2, Globals.Instance._screenSize.Y / 2);
_currentBattle = GetNode<Battle>("Battle");
_player = GetNode<Manager>("Player");
_currentBattle.Start();
}
public override void _Process(double DELTA_)
{
if (Input.IsActionJustReleased("quit_game"))
{
GetTree().Quit();
}
if (Input.IsActionJustPressed("space"))
{
Globals.Instance._battleRunning = !Globals.Instance._battleRunning;
}
}
}
}

125
Gameplay/Manager.cs Normal file
View File

@@ -0,0 +1,125 @@
using Godot;
using System;
using System.Collections.Generic;
using System.Linq;
/// TODO alter code to player vs computer to account for differing logic
public partial class Manager : Node2D
{
public bool _dead, _ready, _moving;
public int _ballsMoving = 0, _health = 10, _healthMax, _speed = 5;
public string _imagePath;
public CollisionShape2D _startArea;
public ManagerPanel _managerPanel = null;
public Sprite2D _image;
public Desk _desk = null;
public Cell _cell;
public List<Cell> _moves = new();
public Manager _opponent;
public List<Worker> _workers = new();
public Node _workerNode;
public Worker _hoveredWorker, _selectedWorker, _heldWorker;
// public List<Tchotchke> _tchotckes = new();
public override void _Ready()
{
_workerNode = GetNode("Workers");
_healthMax = _health;
SetSprite("res://art/ness.png");
// _managerPanel = GetNode<ManagerPanel>("Panel");
_desk = GetNode<Desk>("Desk");
_desk.Setup(15, 20, 50);
_cell = _desk.GetCellFromAddress(1, 1);
// _movements.Insert(0, _deskPosition);
_image = GetNode<Sprite2D>("Image");
_image.GlobalPosition = _cell.GlobalPosition;
// _managerPanel.SetManager(this);
for (int i = 0; i < Globals.Instance._random.Next(3, 6); i++)
{
AddWorker(null);
}
}
public override void _Process(double DELTA_)
{
ChainMovement();
}
public void AddWorker(Worker NEWWORKER)
{
Worker newWorker = NEWWORKER ?? Globals.Instance._workerScene.Instantiate<Worker>();
newWorker._cell = _desk.GetCellFromAddress(1, 1);
newWorker.Position = newWorker._cell.GlobalPosition;
newWorker._manager = this;
_workers.Add(newWorker);
_workerNode.AddChild(newWorker);
// newWorker.SetHovered += SetHoveredWorker;
}
public void ChainMovement()
{
Vector2 direction = Vector2.Zero;
if (Input.IsActionJustPressed("move_up"))
{
direction = Vector2.Up;
}
else if (Input.IsActionJustPressed("move_down"))
{
direction = Vector2.Down;
}
else if (Input.IsActionJustPressed("move_left"))
{
direction = Vector2.Left;
}
else if (Input.IsActionJustPressed("move_right"))
{
direction = Vector2.Right;
}
if (direction != Vector2.Zero)
{
GD.Print(_cell._row + (int)direction.Y, _cell._column + (int)direction.X);
Cell newCell = _desk.GetCellFromAddress(_cell._row + (int)direction.Y, _cell._column + (int)direction.X);
if (newCell != null)
{
GD.Print(_cell._row, _cell._column);
if (_moves.Count > 0)
{
for (int i = 0; i < _workers.Count && i < _moves.Count; i++)
{
_workers[i]._cell = _moves[i];
_workers[i].GlobalPosition = _workers[i]._cell.GlobalPosition;
}
}
_cell = newCell;
_moves.Insert(0, newCell);
_image.GlobalPosition = _cell.GlobalPosition;
}
}
}
public void ChangeHealth(int CHANGE)
{
_health += CHANGE;
_health = Math.Min(_health, _healthMax);
if (_health < 0)
{
_dead = true;
_health = 0;
}
GetNode<ManagerPanel>("Panel").SetValue(_health);
}
public void SetSprite(string PATH)
{
_imagePath = PATH;
}
}

43
Gameplay/ManagerPanel.cs Normal file
View File

@@ -0,0 +1,43 @@
using Godot;
using System;
public partial class ManagerPanel : Panel
{
public bool _hovered = false;
public void SetManager(Manager MANAGER)
{
SetPosition(new Vector2(100, 150));
SetSprite(MANAGER._imagePath);
SetValue(MANAGER._health);
SetMax(MANAGER._healthMax);
}
public void SetPosition(Vector2 POSITION)
{
Position = POSITION;
}
public void SetSprite(string IMAGEPATH)
{
GetNode<Sprite2D>("Image").Texture = GD.Load<Texture2D>(IMAGEPATH);
}
public void SetValue(int VALUE)
{
GetNode<Control>("Health").GetNode<RichTextLabel>("Value").Text = VALUE.ToString();
GetNode<Control>("Health").GetNode<ProgressBar>("Bar").Value = VALUE;
}
public void SetMax(int MAX)
{
GetNode<Control>("Health").GetNode<RichTextLabel>("Max").Text = MAX.ToString();
GetNode<Control>("Health").GetNode<ProgressBar>("Bar").MaxValue = MAX;
}
private void OnMouseEntered()
{
_hovered = true;
}
private void OnMouseExited()
{
_hovered = false;
}
}

View File

@@ -0,0 +1 @@
uid://c4ekvurl6q7jn

View File

@@ -1,23 +0,0 @@
using Godot;
using System;
public partial class Player : Node
{
public bool _available, _selected;
public Actor _actor;
public Battle _currentBattle;
public override void _Ready()
{
_actor = Actor.Create("actor");
AddChild(_actor);
}
public override void _Process(double DELTA_)
{
}
}

View File

@@ -1,15 +0,0 @@
using Godot;
using System;
public partial class PowerBar : ProgressBar
{
public override void _Ready()
{
}
public override void _Process(double DELTA_)
{
Value = GetParent().GetNode<Actor>("Actor").GetNode<Cue>("Cue")._power / GetParent().GetNode<Actor>("Actor").GetNode<Cue>("Cue")._maxPower * 100;
}
}

View File

@@ -1 +0,0 @@
uid://dbfpn1p62siat

8
Gameplay/Stat.cs Normal file
View File

@@ -0,0 +1,8 @@
using Godot;
using System;
public partial class Stat : Node
{
public int _default, _effective;
}

1
Gameplay/Stat.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://dqthihtgdvrx8

View File

@@ -1,8 +0,0 @@
using Godot;
using System;
public partial class Table : Sprite2D
{
}

View File

@@ -1 +0,0 @@
uid://82h0dmyohfj1

92
Gameplay/Tchotchke.cs Normal file
View File

@@ -0,0 +1,92 @@
// using Godot;
// using System;
// using System.Collections.Generic;
// using System.Linq;
// public partial class Tchotchke : StaticBody2D
// {
// public bool _hovered = false, _held = false;
// public List<Action> _actions = new();
// public Node _target;
// public override void _Ready()
// {
// MouseEntered += OnMouseEntered;
// MouseExited += OnMouseExited;
// }
// public override void _Process(double DELTA_)
// {
// if (_held)
// {
// GlobalPosition = GetGlobalMousePosition();
// if (Input.IsActionJustReleased("left_click"))
// {
// Transform2D newTransform = GlobalTransform;
// newTransform.Origin = Position;
// GlobalTransform = newTransform;
// Drop();
// }
// }
// else
// {
// if (_hovered)
// {
// if (Input.IsActionJustPressed("left_click"))
// {
// Hold();
// }
// if (Input.IsActionJustPressed("scroll_up"))
// {
// Rotation -= 1.0f * (float)(Math.PI) / 180.0f;
// }
// if (Input.IsActionJustPressed("scroll_down"))
// {
// Rotation += 1.0f * (float)(Math.PI) / 180.0f;
// }
// }
// }
// }
// public void Drop()
// {
// if (_held)
// {
// _held = false;
// }
// }
// public void FireActions(Trigger.On TRIGGER, Node TARGET = null)
// {
// List<Action> triggeredActions = _actions.Where(e => e._triggers.IndexOf(TRIGGER) > -1).ToList();
// for (int i = 0; i < triggeredActions.Count; i++)
// {
// triggeredActions[i].Target(TARGET);
// triggeredActions[i].Fire();
// }
// List<Action> expiredActions = _actions.Where(e => e._triggers.IndexOf(TRIGGER) > -1).ToList();
// _actions.Except(expiredActions);
// }
// public void Hold()
// {
// if (_held)
// {
// return;
// }
// _held = true;
// }
// // PRIVATE METHODS
// private void OnMouseEntered()
// {
// _hovered = true;
// }
// private void OnMouseExited()
// {
// _hovered = false;
// }
// }

View File

@@ -0,0 +1 @@
uid://qmgo5eukvn6y

View File

@@ -0,0 +1,10 @@
// using Godot;
// using System;
// public partial class AwfullyHotCoffeePot : Tchotchke
// {
// public AwfullyHotCoffeePot() : base()
// {
// // _actions.Add(new Caffeinate(this));
// }
// }

View File

@@ -0,0 +1 @@
uid://cs41fy2tdmox8

View File

@@ -0,0 +1,7 @@
// using Godot;
// using System;
// public partial class RedStapler : Tchotchke
// {
// }

View File

@@ -0,0 +1 @@
uid://suk6jbpwmu1r

View File

@@ -0,0 +1,32 @@
[gd_scene load_steps=5 format=3 uid="uid://cbmpor83jpggo"]
[ext_resource type="Script" uid="uid://cs41fy2tdmox8" path="res://Gameplay/Tchotchkes/AwfullyHotCoffeePot.cs" id="2_mvvpy"]
[ext_resource type="Texture2D" uid="uid://c1tv50tj5cprl" path="res://art/coffee.png" id="3_r4u41"]
[sub_resource type="CircleShape2D" id="CircleShape2D_smj0g"]
radius = 32.0
[sub_resource type="CircleShape2D" id="CircleShape2D_yxdnl"]
radius = 32.0
[node name="AwfullyHotCoffeePot" type="StaticBody2D"]
input_pickable = true
script = ExtResource("2_mvvpy")
[node name="Sprite2D" type="Sprite2D" parent="."]
scale = Vector2(0.1, 0.1)
texture = ExtResource("3_r4u41")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_smj0g")
[node name="Gravity" type="Area2D" parent="."]
gravity_space_override = 1
gravity_point = true
gravity_point_unit_distance = 32.0
gravity_point_center = Vector2(0, 0)
gravity_direction = Vector2(0, 0)
gravity = 5.0
[node name="CollisionShape2D" type="CollisionShape2D" parent="Gravity"]
shape = SubResource("CircleShape2D_yxdnl")

View File

@@ -0,0 +1,31 @@
[gd_scene load_steps=4 format=3 uid="uid://bjml4u7mieb3a"]
[ext_resource type="Script" uid="uid://suk6jbpwmu1r" path="res://Gameplay/Tchotchkes/RedStapler.cs" id="2_1dddf"]
[ext_resource type="Texture2D" uid="uid://d332fv8lhg8na" path="res://art/redstapler.png" id="2_rllbf"]
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_1dddf"]
radius = 29.0
height = 94.0
[node name="RedStapler" type="StaticBody2D"]
input_pickable = true
script = ExtResource("2_1dddf")
[node name="Sprite2D" type="Sprite2D" parent="."]
rotation = -1.0472
scale = Vector2(0.1, 0.1)
texture = ExtResource("2_rllbf")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CapsuleShape2D_1dddf")
[node name="Gravity" type="Area2D" parent="."]
gravity_space_override = 1
gravity_point = true
gravity_point_unit_distance = 32.0
gravity_point_center = Vector2(0, 0)
gravity_direction = Vector2(0, 0)
gravity = 5.0
[node name="CollisionShape2D" type="CollisionShape2D" parent="Gravity"]
shape = SubResource("CapsuleShape2D_1dddf")

27
Gameplay/Trait.cs Normal file
View File

@@ -0,0 +1,27 @@
using Godot;
using System;
using System.Collections.Generic;
public partial class Trait : Node
{
public Worker _target, _owner;
public List<Trigger.On> _triggers = new();
public List<Trigger.On> _expirations = new();
public Trait(Worker OWNER)
{
_owner = OWNER;
}
public virtual void Fire()
{
}
public virtual void Target(Worker TARGET)
{
_target = TARGET;
}
}

1
Gameplay/Trait.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://dtccp5uxgkjwm

View File

@@ -0,0 +1,26 @@
using Godot;
using System;
using System.Collections.Generic;
public partial class BasicAttack : Trait
{
public BasicAttack(Worker OWNER) : base(OWNER)
{
_triggers.Add(Trigger.On.Collision);
}
public override void Fire()
{
if (_target != null)
{
if (_target._manager != _owner._manager)
{
int damage = -_owner._aptitude._default / 2;
// target.ChangeHealth(damage, owner);
}
}
_target = null;
}
}

View File

@@ -0,0 +1 @@
uid://2ilonmgvkayp

View File

@@ -0,0 +1,15 @@
using Godot;
using System;
public partial class Caffeinate : Trait
{
public Caffeinate(Worker OWNER) : base(OWNER)
{
_triggers.Add(Trigger.On.Collision);
}
public override void Fire()
{
}
}

View File

@@ -0,0 +1 @@
uid://cbk76ik5o17nx

View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://bih70e65g1108"]
[ext_resource type="Script" uid="uid://2ilonmgvkayp" path="res://Gameplay/Traits/BasicAttack.cs" id="1_egsn3"]
[node name="BasicAttack" type="Node"]
script = ExtResource("1_egsn3")

View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://bo2rj0albmkkw"]
[ext_resource type="Script" path="res://Gameplay/Effects/Caffeinate.cs" id="1_l8me6"]
[node name="Caffeinate" type="Node"]
script = ExtResource("1_l8me6")

22
Gameplay/Trigger.cs Normal file
View File

@@ -0,0 +1,22 @@
using Godot;
using System;
public partial class Trigger : Node
{
public Timer _timer;
public int _distance;
public enum On
{
Movement,
Collision,
WallCollision,
Death,
Launch,
Stop,
BattleStart,
BattleEnd,
Critical,
Defend,
Time
}
}

1
Gameplay/Trigger.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://g0mmh73fptyg

186
Gameplay/Worker.cs Normal file
View File

@@ -0,0 +1,186 @@
using Godot;
using System;
using System.Collections.Generic;
using System.Linq;
public partial class Worker : Area2D
{
// [Signal]
// public delegate void SwapPositionsEventHandler(Worker THIS);
public bool _dead = false, _hovered = false, _held = false, _selected = false;
public int _size, _health, _healthMax;
public float _distanceTraveled, _stamina, _staminaMax;
public Stat _aptitude = new(), _agility = new(), _ardor = new(), _accumen = new(), _awareness = new(), _appeal = new();
public float _rotationalForce = 0;
public Sprite2D _image;
public ProgressBar _healthBar;
public Manager _manager;
public Cell _cell;
public List<Trait> _traits = new();
public override void _Ready()
{
_size = (int)(((CircleShape2D)GetNode<CollisionShape2D>("Bounds").Shape).Radius);
_aptitude._default = 5;
_agility._default = 5;
_ardor._default = 5;
_accumen._default = 5;
_awareness._default = 5;
_appeal._default = 5;
_aptitude._effective = _aptitude._default;
_agility._effective = _agility._default;
_ardor._effective = _ardor._default;
_accumen._effective = _accumen._default;
_awareness._effective = _awareness._default;
_appeal._effective = _appeal._default;
_image = GetNode<Sprite2D>("Sprite2D");
_traits.Add(new BasicAttack(this));
// _healthBar = GetNode<ProgressBar>("HealthBar");
// _healthBar.MaxValue = _healthMax;
// _healthBar.Value = _health;
}
public override void _Process(double DELTA_)
{
if (_hovered)
{
if (Input.IsActionJustPressed("left_click"))
{
Hold();
}
}
if (_held)
{
GlobalPosition = GetGlobalMousePosition();
if (Input.IsActionJustReleased("left_click"))
{
Drop();
}
}
}
// public void ChangeHealth(int CHANGE, Node CHANGEMAKER)
// {
// if (_health <= 0 && CHANGE < 0)
// {
// // knock the piece off the board and out for the round!
// // process on knockout
// }
// _health += CHANGE;
// _healthBar.Value = _health;
// if (_health <= 0)
// {
// Sleeping = true;
// _dead = true;
// _health = 0;
// FireActions(Trigger.On.Death, _manager);
// }
// }
public void Drop()
{
if (_held)
{
_held = false;
GlobalPosition = _cell.GlobalPosition;
}
}
public void FireActions(Trigger.On TRIGGER, Worker TARGET = null)
{
for (int i = 0; i < _traits.Count; i++)
{
if (_traits[i]._triggers.Contains(TRIGGER))
{
_traits[i].Target(TARGET);
_traits[i].Fire();
}
}
}
// public bool HasCondition(string CONDITION)
// {
// List<string> conditionNames = _conditions.GetChildren().Select(c => c.GetType().ToString()).ToList();
// return conditionNames.Contains(CONDITION);
// }
public void Hold()
{
if (_held)
{
return;
}
_held = true;
}
public void ResetStats()
{
_aptitude._effective = _aptitude._default;
_agility._effective = _agility._default;
_ardor._effective = _ardor._default;
_accumen._effective = _accumen._default;
_awareness._effective = _awareness._default;
_appeal._effective = _appeal._default;
}
public void SwapWith(Worker OTHERWORKER)
{
Cell thisCell = _cell, otherCell = OTHERWORKER._cell;
OTHERWORKER.GlobalPosition = thisCell.GlobalPosition;
_cell = otherCell;
OTHERWORKER._cell = thisCell;
int indexA = _manager._workers.IndexOf(this), indexB = _manager._workers.IndexOf(OTHERWORKER);
Worker placeholder = this;
_manager._workers[indexA] = OTHERWORKER;
_manager._workers[indexB] = placeholder;
}
// PRIVATE METHODS
private void OnAreaEntered(Area2D AREA)
{
if (AREA is Worker)
{
if (_held)
{
SwapWith((Worker)AREA);
}
}
}
private void OnMouseEntered()
{
_hovered = true;
}
private void OnMouseExited()
{
_hovered = false;
}
// private void OnBodyEntered(Node NODE)
// {
// if (NODE is Worker)
// {
// FireActions(Trigger.On.Collision, NODE);
// _rotationalForce *= 0.8f;
// Vector2 rotatedForce = LinearVelocity.Rotated(((Worker)NODE)._rotationalForce);
// ApplyCentralForce(rotatedForce);
// }
// else if (NODE is Tchotchke)
// {
// Tchotchke tchotchke = (Tchotchke)NODE;
// tchotchke.FireActions(Trigger.On.Collision, this);
// }
// }
}

1
Gameplay/Worker.cs.uid Normal file
View File

@@ -0,0 +1 @@
uid://bk6qk4rjmsvtn

View File

@@ -1,8 +0,0 @@
[gd_scene load_steps=2 format=3 uid="uid://72tgm5p8d32r"]
[ext_resource type="Script" uid="uid://b4mr2vn8mw6r4" path="res://Gameplay/Actor.cs" id="1_hr3hk"]
[node name="Actor" type="Node"]
script = ExtResource("1_hr3hk")
[node name="StartPosition" type="Marker2D" parent="."]

View File

@@ -1,37 +0,0 @@
[gd_scene load_steps=6 format=3 uid="uid://c8n4lue2bn25n"]
[ext_resource type="Script" uid="uid://dgdxx8tceiljg" path="res://Gameplay/Ball.cs" id="1_7ritg"]
[ext_resource type="Shader" uid="uid://b6vvt5o0008ob" path="res://shaders/globe.gdshader" id="2_6v01e"]
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_yj7wd"]
bounce = 5.0
[sub_resource type="ShaderMaterial" id="ShaderMaterial_yj7wd"]
shader = ExtResource("2_6v01e")
shader_parameter/scroll_x = 0.0
shader_parameter/scroll_y = 0.0
shader_parameter/rotation = 0.0
shader_parameter/globe_magnitude = 0.0
[sub_resource type="CircleShape2D" id="CircleShape2D_803qd"]
radius = 18.0
[node name="Ball" type="RigidBody2D" groups=["balls"]]
input_pickable = true
physics_material_override = SubResource("PhysicsMaterial_yj7wd")
continuous_cd = 2
contact_monitor = true
max_contacts_reported = 1
script = ExtResource("1_7ritg")
[node name="Image" type="Sprite2D" parent="."]
texture_filter = 1
material = SubResource("ShaderMaterial_yj7wd")
[node name="Bounds" type="CollisionShape2D" parent="."]
position = Vector2(0, -7.10543e-15)
shape = SubResource("CircleShape2D_803qd")
[connection signal="body_entered" from="." to="." method="OnBodyEntered"]
[connection signal="mouse_entered" from="." to="." method="OnMouseEntered"]
[connection signal="mouse_exited" from="." to="." method="OnMouseExited"]

View File

@@ -1,25 +1,6 @@
[gd_scene load_steps=5 format=3 uid="uid://5ymxo45j4ryt"]
[gd_scene load_steps=2 format=3 uid="uid://5ymxo45j4ryt"]
[ext_resource type="Script" uid="uid://0c1u4l8lu07h" path="res://Gameplay/Battle.cs" id="1_i431l"]
[ext_resource type="PackedScene" uid="uid://dsprg4uahkylm" path="res://Gameplay/table.tscn" id="2_6t8i5"]
[ext_resource type="PackedScene" uid="uid://cdaxqopr35lll" path="res://Gameplay/player.tscn" id="2_ogveh"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_tivnh"]
bg_color = Color(0.111197, 0.111197, 0.111197, 1)
border_width_left = 2
border_width_top = 2
border_width_right = 2
border_width_bottom = 2
[node name="Battle" type="Node" groups=["battles"]]
script = ExtResource("1_i431l")
[node name="Table" parent="." instance=ExtResource("2_6t8i5")]
[node name="Player" parent="." instance=ExtResource("2_ogveh")]
[node name="PottedPanel" type="Panel" parent="."]
offset_top = 678.0
offset_right = 1200.0
offset_bottom = 778.0
theme_override_styles/panel = SubResource("StyleBoxFlat_tivnh")

6
Gameplay/cell.tscn Normal file
View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://b7yrd35gvisom"]
[ext_resource type="Script" path="res://Gameplay/Cell.cs" id="1_kyub7"]
[node name="Cell" type="Sprite2D"]
script = ExtResource("1_kyub7")

6
Gameplay/condition.tscn Normal file
View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://dsrjrwd1eyeu3"]
[ext_resource type="Script" path="res://Gameplay/Condition.cs" id="1_s3ntn"]
[node name="Condition" type="Node"]
script = ExtResource("1_s3ntn")

View File

@@ -1,10 +0,0 @@
[gd_scene load_steps=3 format=3 uid="uid://dm4xk16ce0j"]
[ext_resource type="Texture2D" uid="uid://qs3fa665l8x2" path="res://art/cue.png" id="1_ujx86"]
[ext_resource type="Script" uid="uid://ian15gmia0uv" path="res://Gameplay/Cue.cs" id="2_dtogv"]
[node name="Cue" type="Sprite2D"]
z_index = 99
texture_filter = 1
texture = ExtResource("1_ujx86")
script = ExtResource("2_dtogv")

21
Gameplay/desk.tscn Normal file
View File

@@ -0,0 +1,21 @@
[gd_scene load_steps=4 format=3 uid="uid://demwh8ek37mnx"]
[ext_resource type="Script" uid="uid://pxi753iie75t" path="res://Gameplay/Desk.cs" id="2_15p4t"]
[ext_resource type="Texture2D" uid="uid://dy4lmwn1dit26" path="res://art/shade.png" id="2_21bwm"]
[ext_resource type="PackedScene" uid="uid://b7yrd35gvisom" path="res://Gameplay/cell.tscn" id="2_ucfrb"]
[node name="Desk" type="Node2D"]
script = ExtResource("2_15p4t")
[node name="Light" parent="." instance=ExtResource("2_ucfrb")]
visible = false
scale = Vector2(0.195, 0.195)
texture = ExtResource("2_21bwm")
[node name="Dark" parent="." instance=ExtResource("2_ucfrb")]
visible = false
modulate = Color(0, 0, 0, 1)
scale = Vector2(0.195, 0.195)
texture = ExtResource("2_21bwm")
[node name="Cells" type="Node2D" parent="."]

View File

@@ -1,6 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://dw3f81s6epejq"]
[ext_resource type="Script" uid="uid://brjvplo1avnoq" path="res://Gameplay/Globals.cs" id="1_f6yec"]
[ext_resource type="Script" uid="uid://brjvplo1avnoq" path="res://Gameplay/Globals.cs" id="1_pbrrl"]
[node name="Globals" type="Node"]
script = ExtResource("1_f6yec")
script = ExtResource("1_pbrrl")

View File

@@ -1,9 +1,12 @@
[gd_scene load_steps=3 format=3 uid="uid://yqtgkxjjexag"]
[gd_scene load_steps=4 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://5ymxo45j4ryt" path="res://Gameplay/battle.tscn" id="3_vkc8e"]
[ext_resource type="PackedScene" uid="uid://5ymxo45j4ryt" path="res://Gameplay/battle.tscn" id="2_7rujl"]
[ext_resource type="PackedScene" uid="uid://cdaxqopr35lll" path="res://Gameplay/manager.tscn" id="3_vkc8e"]
[node name="Main" type="Node"]
script = ExtResource("1_0xm2m")
[node name="Battle" parent="." instance=ExtResource("3_vkc8e")]
[node name="Battle" parent="." instance=ExtResource("2_7rujl")]
[node name="Player" parent="." instance=ExtResource("3_vkc8e")]

26
Gameplay/manager.tscn Normal file
View File

@@ -0,0 +1,26 @@
[gd_scene load_steps=5 format=3 uid="uid://cdaxqopr35lll"]
[ext_resource type="Script" uid="uid://b66ysicyh0m1s" path="res://Gameplay/Manager.cs" id="1_ivgep"]
[ext_resource type="PackedScene" uid="uid://demwh8ek37mnx" path="res://Gameplay/desk.tscn" id="3_muxv4"]
[ext_resource type="PackedScene" uid="uid://8kv00jc35dma" path="res://Gameplay/manager_panel.tscn" id="3_xooeg"]
[ext_resource type="Texture2D" uid="uid://n0e2tlnwq3e2" path="res://art/manager.png" id="4_2skxn"]
[node name="Manager" type="Node2D"]
script = ExtResource("1_ivgep")
[node name="Panel" parent="." instance=ExtResource("3_xooeg")]
visible = false
offset_left = 101.0
offset_top = 150.0
offset_right = 551.0
offset_bottom = 280.0
grow_horizontal = 1
grow_vertical = 1
[node name="Workers" type="Node" parent="."]
[node name="Desk" parent="." instance=ExtResource("3_muxv4")]
[node name="Image" type="Sprite2D" parent="."]
scale = Vector2(0.5, 0.5)
texture = ExtResource("4_2skxn")

174
Gameplay/manager_panel.tscn Normal file
View File

@@ -0,0 +1,174 @@
[gd_scene load_steps=7 format=3 uid="uid://8kv00jc35dma"]
[ext_resource type="Script" uid="uid://c4ekvurl6q7jn" path="res://Gameplay/ManagerPanel.cs" id="1_8n1hc"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_e1ofl"]
bg_color = Color(1, 1, 1, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mmnuv"]
bg_color = Color(0.133196, 0.133196, 0.133196, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_dg1wx"]
bg_color = Color(0.376575, 0.904155, 0.434351, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_j2own"]
bg_color = Color(0.501407, 0.501406, 0.501406, 1)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_058dj"]
bg_color = Color(1, 1, 1, 1)
[node name="ManagerPanel" type="Panel"]
offset_right = 450.0
offset_bottom = 130.0
grow_horizontal = 2
grow_vertical = 2
mouse_filter = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_e1ofl")
script = ExtResource("1_8n1hc")
[node name="Name" type="RichTextLabel" parent="."]
layout_mode = 0
offset_left = 1.0
offset_top = 8.0
offset_right = 197.0
offset_bottom = 48.0
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_font_sizes/normal_font_size = 24
text = "Manager Name"
horizontal_alignment = 1
vertical_alignment = 1
[node name="Image" type="Sprite2D" parent="."]
position = Vector2(100, 75)
[node name="Health" type="Control" parent="."]
anchors_preset = 0
offset_left = 221.0
offset_top = 6.0
offset_right = 447.0
offset_bottom = 51.0
mouse_filter = 2
[node name="Label" type="RichTextLabel" parent="Health"]
layout_mode = 2
offset_left = 15.0
offset_top = 2.0
offset_right = 115.0
offset_bottom = 42.0
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_font_sizes/normal_font_size = 24
text = "Health"
vertical_alignment = 1
[node name="Value" type="RichTextLabel" parent="Health"]
layout_mode = 2
offset_left = 83.0
offset_top = 2.0
offset_right = 148.0
offset_bottom = 42.0
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_font_sizes/normal_font_size = 24
text = "000"
horizontal_alignment = 2
vertical_alignment = 1
[node name="Separator" type="RichTextLabel" parent="Health"]
layout_mode = 2
offset_left = 112.0
offset_top = 2.0
offset_right = 161.0
offset_bottom = 42.0
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_font_sizes/normal_font_size = 24
text = "/
"
horizontal_alignment = 2
vertical_alignment = 1
[node name="Max" type="RichTextLabel" parent="Health"]
layout_mode = 2
offset_left = 156.0
offset_top = 2.0
offset_right = 205.0
offset_bottom = 42.0
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_colors/default_color = Color(0, 0, 0, 1)
theme_override_font_sizes/normal_font_size = 24
text = "000"
horizontal_alignment = 2
vertical_alignment = 1
[node name="Bar" type="ProgressBar" parent="Health"]
layout_mode = 2
offset_left = 17.0
offset_top = 36.0
offset_right = 204.0
offset_bottom = 44.0
size_flags_horizontal = 3
size_flags_vertical = 3
theme_override_styles/background = SubResource("StyleBoxFlat_mmnuv")
theme_override_styles/fill = SubResource("StyleBoxFlat_dg1wx")
step = 1.0
show_percentage = false
[node name="Team" type="Panel" parent="."]
layout_mode = 0
offset_top = 150.0
offset_right = 450.0
offset_bottom = 800.0
mouse_filter = 2
theme_override_styles/panel = SubResource("StyleBoxFlat_j2own")
[node name="T1" type="Panel" parent="Team"]
layout_mode = 0
offset_left = 63.0
offset_top = 26.0
offset_right = 213.0
offset_bottom = 176.0
theme_override_styles/panel = SubResource("StyleBoxFlat_058dj")
[node name="Image" type="Sprite2D" parent="Team/T1"]
position = Vector2(75, 75)
[node name="T2" type="Panel" parent="Team"]
layout_mode = 0
offset_left = 237.0
offset_top = 28.0
offset_right = 387.0
offset_bottom = 178.0
theme_override_styles/panel = SubResource("StyleBoxFlat_058dj")
[node name="Image" type="Sprite2D" parent="Team/T2"]
position = Vector2(75, 75)
[node name="T3" type="Panel" parent="Team"]
layout_mode = 0
offset_left = 60.0
offset_top = 194.0
offset_right = 210.0
offset_bottom = 344.0
theme_override_styles/panel = SubResource("StyleBoxFlat_058dj")
[node name="Image" type="Sprite2D" parent="Team/T3"]
position = Vector2(75, 75)
[node name="T4" type="Panel" parent="Team"]
layout_mode = 0
offset_left = 237.0
offset_top = 196.0
offset_right = 387.0
offset_bottom = 346.0
theme_override_styles/panel = SubResource("StyleBoxFlat_058dj")
[node name="Image" type="Sprite2D" parent="Team/T4"]
position = Vector2(75, 75)
[connection signal="mouse_entered" from="." to="." method="OnMouseEntered"]
[connection signal="mouse_exited" from="." to="." method="OnMouseExited"]

View File

@@ -1,208 +0,0 @@
//using Godot;
//using System;
//
//public partial class Ball : RigidBody2D
//{
//[Signal]
//public delegate void HoverEventHandler(bool tf = true);
//[Signal]
//public delegate void SelectEventHandler(bool tf = true);
//[Signal]
//public delegate void AimEventHandler(bool tf = true);
//[Signal]
//public delegate void LaunchEventHandler(bool tf = true);
//[Signal]
//public delegate void MoveEventHandler(bool tf = true);
//[Signal]
//public delegate void BumpMarbleEventHandler(Ball ball);
//[Signal]
//public delegate void DefenseDownEventHandler(int damage);
//
//public bool _holding, _placed, _hovered, _selected, _aimed, _launched, _moving;
//public int _defense, _defenseMax, _speed;
//public Vector2 _force, _velocity, _screenSize;
//
//
//public override void _Ready()
//{
//_holding = false;
//_placed = true;
//_hovered = false;
//_selected = false;
//_aimed = false;
//_launched = false;
//_moving = false;
//_defense = 10;
//_defenseMax = _defense;
//_speed = 400;
//_force = new Vector2(0,0);
//_velocity = new Vector2(0,0);
//_screenSize = GetViewportRect().Size;
//
////Hide();
//}
//
//public override void _PhysicsProcess(double delta) //THIS IS LIKE THE UPDATE FUNCTION
//{
//if (_placed)
//{
//TrySelect();
//TryAim();
//TryLaunch();
//TryMovement(delta);
//}
//else if (_holding)
//{
//GetNode<CollisionShape2D>("Bounds").Disabled = true;
//Vector2 mousePosition = GetGlobalMousePosition();
//if (Input.IsActionJustReleased("left_click"))
//{
//Start(mousePosition);
//}
//}
//}
//
//public void DefenseChange(int change)
//{
//_defense += change;
//if (_defense < 0)
//{
//EmitSignal(SignalName.DefenseDown); // 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>("Bounds").Disabled = false;
//}
//
//public void TryAim()
//{
//if (_selected && Input.IsActionPressed("left_click") && ! _hovered && !_aimed)
//{
//_aimed = true;
//EmitSignal(SignalName.Aim);
//}
//
//if (_aimed)
//{
//Vector2 mousePosition = GetGlobalMousePosition();
//_force = (Position - mousePosition) /6;
//
//if (!Input.IsActionPressed("left_click"))
//{
//if (!_hovered)
//{
//_launched = true;
//EmitSignal(SignalName.Select, false);
//}
//else
//{
//_aimed = false;
//EmitSignal(SignalName.Aim, false);
//}
//}
//}
//}
//
//public void TryLaunch()
//{
//if (_aimed && Input.IsActionJustReleased("left_click"))
//{
//_selected = false;
//EmitSignal(SignalName.Select, false);
//
//_aimed = false;
//EmitSignal(SignalName.Aim, false);
//
//_launched = true;
//EmitSignal(SignalName.Launch);
//
//ApplyCentralForce(_force * _speed);
//_force = Vector2.Zero;
//}
//}
//
//public void TryMovement(double delta)
//{
//if (LinearVelocity.Length() > 0 && !Sleeping)
//{
//if (!_moving)
//{
//_moving = true;
//EmitSignal(SignalName.Move);
//}
//}
//if (_moving)
//{
////Vector2 Scroll = -LinearVelocity / 100;
////
////Sprite2D sprite = (Sprite2D)GetNode("Texture");
////ShaderMaterial material = (ShaderMaterial)sprite.Material;
////
////float CurrentScrollX = (float)material.GetShaderParameter("scroll_x");
////material.SetShaderParameter("scroll_x", (CurrentScrollX + Scroll.X * (float)delta) % 1.0f);
////
////float CurrentScrollY = (float)material.GetShaderParameter("scroll_y");
////material.SetShaderParameter("scroll_y", (CurrentScrollY + Scroll.Y * (float)delta) % 1.0f);
//
//
//if (Sleeping)
//{
//_launched = false;
//_moving = false;
//EmitSignal(SignalName.Move, false);
//}
//}
//}
//
//public void TrySelect()
//{
//if ( _hovered)
//{
//if (Input.IsActionJustPressed("left_click") && !_selected)
//{
//_selected = true;
//EmitSignal(SignalName.Select);
//}
//}
//
//if (_selected)
//{
//if (!_hovered)
//{
//if (Input.IsActionJustPressed("left_click") && _selected)
//{
//_selected = false;
//EmitSignal(SignalName.Select, false);
//}
//}
//}
//}
//
//private void OnMouseEntered()
//{
//_hovered = true;
//EmitSignal(SignalName.Hover);
//}
//
//private void OnMouseExited()
//{
//_hovered = false;
//EmitSignal(SignalName.Hover, false);
//}
//
//private void OnBodyEntered(Node2D body)
//{
//if (body.GetType() == typeof(Ball))
//{
//EmitSignal(SignalName.BumpMarble, (Ball)body);
//}
//}
//}

View File

@@ -1 +0,0 @@
uid://2rh2m60aldei

View File

@@ -1,23 +0,0 @@
[gd_scene load_steps=5 format=3 uid="uid://cdaxqopr35lll"]
[ext_resource type="Script" uid="uid://b66ysicyh0m1s" path="res://Gameplay/Player.cs" id="1_4flbx"]
[ext_resource type="Script" uid="uid://dbfpn1p62siat" path="res://Gameplay/PowerBar.cs" id="2_onrkg"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_i3pqv"]
bg_color = Color(1, 1, 1, 0.458824)
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_hqtel"]
bg_color = Color(0.92549, 0.0901961, 0.0627451, 1)
[node name="Player" type="Node"]
script = ExtResource("1_4flbx")
[node name="PowerBar" type="ProgressBar" parent="."]
visible = false
z_index = 1
offset_right = 100.0
offset_bottom = 30.0
theme_override_styles/background = SubResource("StyleBoxFlat_i3pqv")
theme_override_styles/fill = SubResource("StyleBoxFlat_hqtel")
show_percentage = false
script = ExtResource("2_onrkg")

6
Gameplay/stat.tscn Normal file
View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://b8rfuerwno7h1"]
[ext_resource type="Script" uid="uid://dqthihtgdvrx8" path="res://Gameplay/Stat.cs" id="1_kb7kj"]
[node name="Stat" type="Node"]
script = ExtResource("1_kb7kj")

View File

@@ -1,149 +0,0 @@
[gd_scene load_steps=12 format=3 uid="uid://dsprg4uahkylm"]
[ext_resource type="Texture2D" uid="uid://df2xulwx34fi" path="res://art/table.png" id="1_kl0hw"]
[ext_resource type="Script" uid="uid://82h0dmyohfj1" path="res://Gameplay/Table.cs" id="1_v5i0k"]
[sub_resource type="PhysicsMaterial" id="PhysicsMaterial_v5i0k"]
bounce = 1.0
absorbent = true
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_v5i0k"]
radius = 74.0
height = 264.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_kl0hw"]
radius = 74.0
height = 264.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_vjl2i"]
radius = 28.75
height = 154.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_67vji"]
radius = 74.0
height = 264.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_jry6c"]
radius = 74.0
height = 264.0
[sub_resource type="CapsuleShape2D" id="CapsuleShape2D_bhh2s"]
radius = 28.75
height = 154.0
[sub_resource type="CircleShape2D" id="CircleShape2D_v5i0k"]
radius = 15.0333
[sub_resource type="RectangleShape2D" id="RectangleShape2D_s3o1g"]
size = Vector2(192.5, 520)
[node name="Table" type="Sprite2D"]
texture_filter = 1
texture = ExtResource("1_kl0hw")
centered = false
script = ExtResource("1_v5i0k")
[node name="Cushions" type="StaticBody2D" parent="."]
physics_material_override = SubResource("PhysicsMaterial_v5i0k")
[node name="TL" type="CollisionPolygon2D" parent="Cushions"]
position = Vector2(404, 650)
rotation = 3.14159
polygon = PackedVector2Array(-153, 47, -160, 26, -160, -128, 314, -127, 314, 27.9999, 292, 47)
[node name="T" type="CollisionPolygon2D" parent="Cushions"]
position = Vector2(29, 410)
rotation = -1.5708
polygon = PackedVector2Array(-153, 48, -171, 29, -173, -129, 314, -127, 314, 27.9999, 292, 47.9999)
[node name="TR" type="CollisionPolygon2D" parent="Cushions"]
position = Vector2(260, 31)
polygon = PackedVector2Array(-149, 47, -169, 27, -172, -130, 303, -127, 306, 25, 292, 47)
[node name="BR" type="CollisionPolygon2D" parent="Cushions"]
position = Vector2(783, 29)
polygon = PackedVector2Array(-153, 47, -160, 26, -160, -128, 318, -126, 320, 28, 298, 47)
[node name="B" type="CollisionPolygon2D" parent="Cushions"]
position = Vector2(1172, 270)
rotation = 1.5708
polygon = PackedVector2Array(-153, 47, -175, 26, -175, -138, 314, -127, 314, 25, 292, 47)
[node name="BL" type="CollisionPolygon2D" parent="Cushions"]
position = Vector2(943, 648)
rotation = 3.14159
polygon = PackedVector2Array(-139, 47.0001, -160, 26, -160, -128, 320, -127, 319, 28, 310, 47)
[node name="PocketTL" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PocketTL"]
position = Vector2(13, 717)
shape = SubResource("CapsuleShape2D_v5i0k")
[node name="PocketTR" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PocketTR"]
position = Vector2(13, -36)
shape = SubResource("CapsuleShape2D_kl0hw")
[node name="PocketR" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PocketR"]
position = Vector2(593.25, -19)
shape = SubResource("CapsuleShape2D_vjl2i")
[node name="PocketBR" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PocketBR"]
position = Vector2(1177, -37)
shape = SubResource("CapsuleShape2D_67vji")
[node name="PocketBL" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PocketBL"]
position = Vector2(1178, 715)
shape = SubResource("CapsuleShape2D_jry6c")
[node name="PocketL" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PocketL"]
position = Vector2(593.25, 697)
shape = SubResource("CapsuleShape2D_bhh2s")
[node name="Pots" type="Area2D" parent="."]
[node name="TL" type="CollisionShape2D" parent="Pots"]
position = Vector2(55, 617)
shape = SubResource("CircleShape2D_v5i0k")
[node name="TR" type="CollisionShape2D" parent="Pots"]
position = Vector2(56, 63)
shape = SubResource("CircleShape2D_v5i0k")
[node name="R" type="CollisionShape2D" parent="Pots"]
position = Vector2(593, 43)
shape = SubResource("CircleShape2D_v5i0k")
[node name="BR" type="CollisionShape2D" parent="Pots"]
position = Vector2(1135, 63)
shape = SubResource("CircleShape2D_v5i0k")
[node name="BL" type="CollisionShape2D" parent="Pots"]
position = Vector2(1135, 616)
shape = SubResource("CircleShape2D_v5i0k")
[node name="L" type="CollisionShape2D" parent="Pots"]
position = Vector2(593, 634)
shape = SubResource("CircleShape2D_v5i0k")
[node name="PlayerStartArea" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="PlayerStartArea"]
position = Vector2(983.75, 340)
shape = SubResource("RectangleShape2D_s3o1g")
[node name="EnemyStartArea" type="Area2D" parent="."]
[node name="CollisionShape2D" type="CollisionShape2D" parent="EnemyStartArea"]
position = Vector2(216, 340)
shape = SubResource("RectangleShape2D_s3o1g")

32
Gameplay/tchotchke.tscn Normal file
View File

@@ -0,0 +1,32 @@
[gd_scene load_steps=5 format=3 uid="uid://6gr5saa81qdh"]
[ext_resource type="Script" uid="uid://qmgo5eukvn6y" path="res://Gameplay/Tchotchke.cs" id="1_c08fi"]
[ext_resource type="Texture2D" uid="uid://c1tv50tj5cprl" path="res://art/coffee.png" id="2_gl5mj"]
[sub_resource type="CircleShape2D" id="CircleShape2D_gl5mj"]
radius = 32.0
[sub_resource type="CircleShape2D" id="CircleShape2D_d82wc"]
radius = 32.0
[node name="Tchotchke" type="StaticBody2D"]
input_pickable = true
script = ExtResource("1_c08fi")
[node name="Sprite2D" type="Sprite2D" parent="."]
scale = Vector2(0.1, 0.1)
texture = ExtResource("2_gl5mj")
[node name="CollisionShape2D" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_gl5mj")
[node name="Gravity" type="Area2D" parent="."]
gravity_space_override = 1
gravity_point = true
gravity_point_unit_distance = 32.0
gravity_point_center = Vector2(0, 0)
gravity_direction = Vector2(0, 0)
gravity = 5.0
[node name="CollisionShape2D" type="CollisionShape2D" parent="Gravity"]
shape = SubResource("CircleShape2D_d82wc")

6
Gameplay/trait.tscn Normal file
View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://dti20yu8jfujq"]
[ext_resource type="Script" uid="uid://dtccp5uxgkjwm" path="res://Gameplay/Trait.cs" id="1_wtks1"]
[node name="Trait" type="Node"]
script = ExtResource("1_wtks1")

6
Gameplay/trigger.tscn Normal file
View File

@@ -0,0 +1,6 @@
[gd_scene load_steps=2 format=3 uid="uid://dufkmbuxx2h41"]
[ext_resource type="Script" uid="uid://g0mmh73fptyg" path="res://Gameplay/Trigger.cs" id="1_opbo1"]
[node name="Trigger" type="Node"]
script = ExtResource("1_opbo1")

33
Gameplay/worker.tscn Normal file
View File

@@ -0,0 +1,33 @@
[gd_scene load_steps=4 format=3 uid="uid://37hjd4v3p42o"]
[ext_resource type="Script" path="res://Gameplay/Worker.cs" id="1_e314i"]
[ext_resource type="Texture2D" uid="uid://dmispjd3fmmks" path="res://art/worker_test.png" id="2_m3kx1"]
[sub_resource type="CircleShape2D" id="CircleShape2D_4poc8"]
radius = 16.0
[node name="Worker" type="Area2D"]
script = ExtResource("1_e314i")
[node name="Sprite2D" type="Sprite2D" parent="."]
texture_filter = 1
scale = Vector2(0.5, 0.5)
texture = ExtResource("2_m3kx1")
[node name="HealthBar" type="ProgressBar" parent="."]
visible = false
top_level = true
offset_right = 150.0
offset_bottom = 27.0
step = 1.0
[node name="Bounds" type="CollisionShape2D" parent="."]
shape = SubResource("CircleShape2D_4poc8")
[node name="Actions" type="Node" parent="."]
[node name="Conditions" type="Node" parent="."]
[connection signal="area_entered" from="." to="." method="OnAreaEntered"]
[connection signal="mouse_entered" from="." to="." method="OnMouseEntered"]
[connection signal="mouse_exited" from="." to="." method="OnMouseExited"]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

View File

@@ -1,19 +0,0 @@
[remap]
importer="oggvorbisstr"
type="AudioStreamOggVorbis"
uid="uid://ctf7osjgudmv3"
path="res://.godot/imported/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggvorbisstr"
[deps]
source_file="res://art/House In a Forest Loop.ogg"
dest_files=["res://.godot/imported/House In a Forest Loop.ogg-1a6a72ae843ad792b7039931227e8d50.oggvorbisstr"]
[params]
loop=false
loop_offset=0
bpm=0
beat_count=0
bar_beats=4

BIN
art/arena.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -2,16 +2,16 @@
importer="texture"
type="CompressedTexture2D"
uid="uid://df2xulwx34fi"
path="res://.godot/imported/table.png-2f7ddccae7f21a9c21b1a69f78f7d278.ctex"
uid="uid://nxo2tpgmobli"
path="res://.godot/imported/arena.png-d8e83965b3637c723ffc2bf889822dbe.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/table.png"
dest_files=["res://.godot/imported/table.png-2f7ddccae7f21a9c21b1a69f78f7d278.ctex"]
source_file="res://art/arena.png"
dest_files=["res://.godot/imported/arena.png-d8e83965b3637c723ffc2bf889822dbe.ctex"]
[params]

BIN
art/arenaBounds.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -0,0 +1,34 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bt5xf5evtlpad"
path="res://.godot/imported/arenaBounds.png-09659382dd1978da5024d88f2bc1f256.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/arenaBounds.png"
dest_files=["res://.godot/imported/arenaBounds.png-09659382dd1978da5024d88f2bc1f256.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dnoqkj2msjdbe"
path="res://.godot/imported/ball_12.png-ee95853e656d2e219ff7982e8f31245b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_12.png"
dest_files=["res://.godot/imported/ball_12.png-ee95853e656d2e219ff7982e8f31245b.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://da3nlvk4dbr7k"
path="res://.godot/imported/ball_13.png-d0401eba85428b715e4b7978038050a7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_13.png"
dest_files=["res://.godot/imported/ball_13.png-d0401eba85428b715e4b7978038050a7.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dtt144b4hcq1t"
path="res://.godot/imported/ball_14.png-3e724d693d3d782a30a6adc93f2e4b2c.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_14.png"
dest_files=["res://.godot/imported/ball_14.png-3e724d693d3d782a30a6adc93f2e4b2c.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://3k6u32wysmak"
path="res://.godot/imported/ball_15.png-8cdb4b3900fffa6d5105e2cff3d59cc0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_15.png"
dest_files=["res://.godot/imported/ball_15.png-8cdb4b3900fffa6d5105e2cff3d59cc0.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dm08od2rm4t6a"
path="res://.godot/imported/ball_3.png-1f1717ef70ccfa38748c55c3f37bf4f7.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_3.png"
dest_files=["res://.godot/imported/ball_3.png-1f1717ef70ccfa38748c55c3f37bf4f7.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d1xed824duq5b"
path="res://.godot/imported/ball_4.png-b0b95aa2000006a1df4e046cb728e7d0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_4.png"
dest_files=["res://.godot/imported/ball_4.png-b0b95aa2000006a1df4e046cb728e7d0.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cnpkopyuvddgs"
path="res://.godot/imported/ball_5.png-a1e18fd4e8acc177e7dd8288726a71c0.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_5.png"
dest_files=["res://.godot/imported/ball_5.png-a1e18fd4e8acc177e7dd8288726a71c0.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d0w8ji224tqo2"
path="res://.godot/imported/ball_6.png-8d292140d73da9ac261c7faa0383e9d6.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_6.png"
dest_files=["res://.godot/imported/ball_6.png-8d292140d73da9ac261c7faa0383e9d6.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b8lfcpntlj5sv"
path="res://.godot/imported/ball_7.png-0fceb32a90a934eda906dd7cb8e82b2d.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_7.png"
dest_files=["res://.godot/imported/ball_7.png-0fceb32a90a934eda906dd7cb8e82b2d.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,34 +0,0 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b6pal6tj8p06x"
path="res://.godot/imported/ball_8.png-29925aa4b6d7d0aa4d07d880dce61a9b.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://art/ball_8.png"
dest_files=["res://.godot/imported/ball_8.png-29925aa4b6d7d0aa4d07d880dce61a9b.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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

BIN
art/beyblade.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Some files were not shown because too many files have changed in this diff Show More