WIP Beetroot
This commit is contained in:
@@ -26,8 +26,11 @@ public partial class PlantBehaviour2D : Node2D
|
||||
[Export] private PlantState _state = PlantState.None;
|
||||
[Export] private FieldBehaviour2D _field;
|
||||
[Export] private ItemOnGround2D _harvestablePlant;
|
||||
[Export] private CpuParticles2D _magicEffect;
|
||||
|
||||
private string _magicWordDialogicEventName = "MagicWord";
|
||||
private Sprite2D _currentPlantSprite = null;
|
||||
private bool _magicWordSaid;
|
||||
|
||||
|
||||
/// <summary>
|
||||
@@ -35,7 +38,7 @@ public partial class PlantBehaviour2D : Node2D
|
||||
/// </summary>
|
||||
public void Grow()
|
||||
{
|
||||
if (_field.FieldState != FieldState.Watered)
|
||||
if (_field.FieldState != FieldState.Watered || !_magicWordSaid)
|
||||
return;
|
||||
|
||||
GetTree().CallGroup("PlantGrowing", Player2D.MethodName.PlayFarmingAnimation);
|
||||
@@ -76,6 +79,7 @@ public partial class PlantBehaviour2D : Node2D
|
||||
}
|
||||
|
||||
_field.UpdateFieldState(FieldState.Tilled);
|
||||
_magicWordSaid = false;
|
||||
}
|
||||
|
||||
private Sprite2D GetRandomSprite(Sprite2D[] sprites)
|
||||
@@ -83,4 +87,16 @@ public partial class PlantBehaviour2D : Node2D
|
||||
Random rand = new Random();
|
||||
return sprites[rand.Next(sprites.Length)];
|
||||
}
|
||||
|
||||
public void SayMagicWord(string wordEvent)
|
||||
{
|
||||
GD.Print("Calling Dialogic event: " + wordEvent);
|
||||
if (_magicWordDialogicEventName != wordEvent)
|
||||
return;
|
||||
|
||||
_magicEffect.Emitting = true;
|
||||
_magicEffect.OneShot = true;
|
||||
_magicWordSaid = true;
|
||||
Grow();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user