Compare commits
25 Commits
920c5c27fb
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 853960932f | |||
| 948e1d3874 | |||
| 36ce21cb44 | |||
| 23700e2bcf | |||
| ac25e55bf3 | |||
| 4fe431a8e0 | |||
| 2eb95b18fd | |||
| dfbad40739 | |||
| a47a6331ee | |||
| 8a2ad448fd | |||
| 7d95468603 | |||
| d00ab15640 | |||
| 4fe9a333d7 | |||
| 33db2a63a2 | |||
| 7f65338679 | |||
| 50e4f8fcb5 | |||
| a8373726f9 | |||
| 0638fc52ec | |||
| 41b5c34e70 | |||
| f351f0ade9 | |||
| ea03cc152a | |||
| 3884c07811 | |||
| c5795028f0 | |||
| 7c81e03613 | |||
| 022f0948db |
@@ -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);
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
uid://b4mr2vn8mw6r4
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
uid://dgdxx8tceiljg
|
||||
@@ -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
@@ -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
@@ -0,0 +1 @@
|
||||
uid://cmw4772lmwms0
|
||||
30
Gameplay/Condition.cs
Normal 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;
|
||||
}
|
||||
|
||||
}
|
||||
1
Gameplay/Condition.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://vj2qucjwah5y
|
||||
@@ -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();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
uid://ian15gmia0uv
|
||||
78
Gameplay/Desk.cs
Normal 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
@@ -0,0 +1 @@
|
||||
uid://pxi753iie75t
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -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
@@ -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
@@ -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;
|
||||
}
|
||||
}
|
||||
1
Gameplay/ManagerPanel.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://c4ekvurl6q7jn
|
||||
@@ -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_)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -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;
|
||||
}
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
uid://dbfpn1p62siat
|
||||
8
Gameplay/Stat.cs
Normal 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
@@ -0,0 +1 @@
|
||||
uid://dqthihtgdvrx8
|
||||
@@ -1,8 +0,0 @@
|
||||
using Godot;
|
||||
using System;
|
||||
|
||||
public partial class Table : Sprite2D
|
||||
|
||||
{
|
||||
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
uid://82h0dmyohfj1
|
||||
92
Gameplay/Tchotchke.cs
Normal 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;
|
||||
// }
|
||||
|
||||
|
||||
// }
|
||||
1
Gameplay/Tchotchke.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://qmgo5eukvn6y
|
||||
10
Gameplay/Tchotchkes/AwfullyHotCoffeePot.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
// using Godot;
|
||||
// using System;
|
||||
|
||||
// public partial class AwfullyHotCoffeePot : Tchotchke
|
||||
// {
|
||||
// public AwfullyHotCoffeePot() : base()
|
||||
// {
|
||||
// // _actions.Add(new Caffeinate(this));
|
||||
// }
|
||||
// }
|
||||
1
Gameplay/Tchotchkes/AwfullyHotCoffeePot.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://cs41fy2tdmox8
|
||||
7
Gameplay/Tchotchkes/RedStapler.cs
Normal file
@@ -0,0 +1,7 @@
|
||||
// using Godot;
|
||||
// using System;
|
||||
|
||||
// public partial class RedStapler : Tchotchke
|
||||
// {
|
||||
|
||||
// }
|
||||
1
Gameplay/Tchotchkes/RedStapler.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://suk6jbpwmu1r
|
||||
32
Gameplay/Tchotchkes/awfully_hot_coffee_pot.tscn
Normal 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")
|
||||
31
Gameplay/Tchotchkes/red_stapler.tscn
Normal 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
@@ -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
@@ -0,0 +1 @@
|
||||
uid://dtccp5uxgkjwm
|
||||
26
Gameplay/Traits/BasicAttack.cs
Normal 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;
|
||||
}
|
||||
|
||||
}
|
||||
1
Gameplay/Traits/BasicAttack.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://2ilonmgvkayp
|
||||
15
Gameplay/Traits/Caffeinate.cs
Normal 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()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
1
Gameplay/Traits/Caffeinate.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://cbk76ik5o17nx
|
||||
6
Gameplay/Traits/basic_attack.tscn
Normal 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")
|
||||
6
Gameplay/Traits/caffeinate.tscn
Normal 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
@@ -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
@@ -0,0 +1 @@
|
||||
uid://g0mmh73fptyg
|
||||
186
Gameplay/Worker.cs
Normal 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
@@ -0,0 +1 @@
|
||||
uid://bk6qk4rjmsvtn
|
||||
@@ -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="."]
|
||||
@@ -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"]
|
||||
@@ -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
@@ -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
@@ -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")
|
||||
@@ -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
@@ -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="."]
|
||||
@@ -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")
|
||||
@@ -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
@@ -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
@@ -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"]
|
||||
@@ -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);
|
||||
//}
|
||||
//}
|
||||
//}
|
||||
@@ -1 +0,0 @@
|
||||
uid://2rh2m60aldei
|
||||
@@ -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
@@ -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")
|
||||
@@ -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
@@ -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
@@ -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
@@ -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
@@ -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"]
|
||||
BIN
art/CogIcon.png
|
Before Width: | Height: | Size: 1.1 KiB |
@@ -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
|
After Width: | Height: | Size: 14 KiB |
@@ -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
|
After Width: | Height: | Size: 25 KiB |
34
art/arenaBounds.png.import
Normal 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
|
||||
BIN
art/ball_1.png
|
Before Width: | Height: | Size: 13 KiB |
BIN
art/ball_10.png
|
Before Width: | Height: | Size: 16 KiB |
BIN
art/ball_11.png
|
Before Width: | Height: | Size: 16 KiB |
BIN
art/ball_12.png
|
Before Width: | Height: | Size: 16 KiB |
@@ -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
|
||||
BIN
art/ball_13.png
|
Before Width: | Height: | Size: 16 KiB |
@@ -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
|
||||
BIN
art/ball_14.png
|
Before Width: | Height: | Size: 16 KiB |
@@ -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
|
||||
BIN
art/ball_15.png
|
Before Width: | Height: | Size: 16 KiB |
@@ -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
|
||||
BIN
art/ball_2.png
|
Before Width: | Height: | Size: 14 KiB |
BIN
art/ball_3.png
|
Before Width: | Height: | Size: 15 KiB |
@@ -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
|
||||
BIN
art/ball_4.png
|
Before Width: | Height: | Size: 14 KiB |
@@ -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
|
||||
BIN
art/ball_5.png
|
Before Width: | Height: | Size: 14 KiB |
@@ -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
|
||||
BIN
art/ball_6.png
|
Before Width: | Height: | Size: 15 KiB |
@@ -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
|
||||
BIN
art/ball_7.png
|
Before Width: | Height: | Size: 14 KiB |
@@ -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
|
||||
BIN
art/ball_8.png
|
Before Width: | Height: | Size: 15 KiB |
@@ -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
|
||||
BIN
art/ball_9.png
|
Before Width: | Height: | Size: 14 KiB |
BIN
art/beyblade.png
Normal file
|
After Width: | Height: | Size: 227 KiB |