63 lines
No EOL
950 B
C#
63 lines
No EOL
950 B
C#
using UnityEngine;
|
|
|
|
public class SnakeFace
|
|
{
|
|
public SnakeFace(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.data = data;
|
|
}
|
|
|
|
GraphXData data;
|
|
|
|
void GameStart(Main main)
|
|
{
|
|
data.faceMesh = data.faceDefault;
|
|
}
|
|
|
|
void Reset()
|
|
{
|
|
data.faceMesh = data.faceDefault;
|
|
}
|
|
|
|
void Step(int full)
|
|
{
|
|
if (full > 0)
|
|
{
|
|
data.faceMesh = data.faceEaten;
|
|
}
|
|
else
|
|
{
|
|
data.faceMesh = data.faceDefault;
|
|
}
|
|
}
|
|
|
|
void Smell()
|
|
{
|
|
data.faceMesh = data.faceEat;
|
|
}
|
|
|
|
void Eat(Vector3 pos)
|
|
{
|
|
data.faceMesh = data.faceEaten;
|
|
}
|
|
|
|
void Bump(Vector3 dir)
|
|
{
|
|
data.faceMesh = data.faceBump;
|
|
}
|
|
|
|
void Crash(Vector3 dir)
|
|
{
|
|
data.faceMesh = data.faceSelfGameover;
|
|
|
|
// box gameover?
|
|
}
|
|
} |