This repository has been archived on 2024-11-03. You can view files and clone it, but cannot push or open issues or pull requests.
snakeinabox/Assets/Scripts/SnakeFace.cs
2020-10-01 19:20:21 -07:00

79 lines
No EOL
1.2 KiB
C#

using UnityEngine;
public class SnakeFace
{
public SnakeFace(Main main, GraphXData data)
{
Main.OnGameStart += this.GameStart;
Main.OnReset += this.Reset;
Game.OnStep += this.Step;
Game.OnSmell += this.Smell;
Game.OnEat += this.Eat;
Game.OnBump += this.Bump;
Game.OnCrash += this.Crash;
this.main = main;
this.data = data;
}
Main main;
GraphXData data;
void GameStart(Main main)
{
data.faceMesh = data.faceDefault;
}
void Reset()
{
data.faceMesh = data.faceDefault;
}
void Step(int full)
{
if (full > 0)
{
if (main.fastQueue > 0)
{
data.faceMesh = data.faceHyper;
}
else
{
data.faceMesh = data.faceEaten;
}
}
else
{
data.faceMesh = data.faceDefault;
}
}
void Smell()
{
data.faceMesh = data.faceEat;
}
void Eat(Vector3 pos)
{
if (main.fastQueue > 0)
{
data.faceMesh = data.faceHyper;
}
else
{
data.faceMesh = data.faceEaten;
}
}
void Bump(Vector3 dir)
{
data.faceMesh = data.faceBump;
}
void Crash(Vector3 dir)
{
data.faceMesh = data.faceSelfGameover;
// box gameover?
}
}