using UnityEngine;
using System.Collections;
public class GameFSM : MonoBehaviour {
private bool isPlayer;
private bool isMonster;
public static GameFSM self;
public State mState;
public int QTEcount = 0;//单个宠物QTE累计达到三次时,添加快速反应事件
public int monsterHp
{
get
{
return m_monsterHp;
}
set
{
m_monsterHp = value;
}
}
private int m_monsterHp;
public enum State
{
Player,
monster,
escape,
QTE,
exit
}
// Use this for initialization
void Start () {
}
void Awake()
{
self = this;
}
// Update is called once per frame
void Update () {
if (isPlayer)
mState = State.Player;
if (isMonster)
mState = State.monster;
if (mState == State.monster)
MonsterAttack(1);
if (mState == State.Player)
PlayerAttack(1);
//玩家宠物hp为0,玩家失败
if (monsterHp <=0) //怪兽宠物hp为0,玩家胜利,可捕捉怪兽宠物
{
print("胜利");
}
if (QTEcount == 3) //QTEcount=3快速反应事件
{
QTEevent();
}
}
void reset()
{
}
public void PlayerAttack(int id)//人物宠物攻击
{
//怪物HP减少
Hashtable data = DataRecord.GetFightData(id);
int damage = 0;
if(data!=null)
{
damage =int.Parse (data["attack"].ToString());
}
monsterHp -= damage;
QTEcount++;//QTE计数加一
isPlayer = false;
isMonster = true;
}
public void MonsterAttack(int id)//怪物宠物攻击
{
//人物宠物HP减少
Hashtable data = DataRecord.GetFightData(id);
int damage = 0;
if (data != null)
{
damage = int.Parse(data["attack"].ToString());
}
isMonster = false;
}
public void QTEevent() { //QTE:每完成一次指定任务自动攻击一次,共三次,任意一次失败之后结束QTE事件,重新开始计数
}
public void DoEscape()//逃跑
{
}
}
using System.Collections;
public class GameFSM : MonoBehaviour {
private bool isPlayer;
private bool isMonster;
public static GameFSM self;
public State mState;
public int QTEcount = 0;//单个宠物QTE累计达到三次时,添加快速反应事件
public int monsterHp
{
get
{
return m_monsterHp;
}
set
{
m_monsterHp = value;
}
}
private int m_monsterHp;
public enum State
{
Player,
monster,
escape,
QTE,
exit
}
// Use this for initialization
void Start () {
}
void Awake()
{
self = this;
}
// Update is called once per frame
void Update () {
if (isPlayer)
mState = State.Player;
if (isMonster)
mState = State.monster;
if (mState == State.monster)
MonsterAttack(1);
if (mState == State.Player)
PlayerAttack(1);
//玩家宠物hp为0,玩家失败
if (monsterHp <=0) //怪兽宠物hp为0,玩家胜利,可捕捉怪兽宠物
{
print("胜利");
}
if (QTEcount == 3) //QTEcount=3快速反应事件
{
QTEevent();
}
}
void reset()
{
}
public void PlayerAttack(int id)//人物宠物攻击
{
//怪物HP减少
Hashtable data = DataRecord.GetFightData(id);
int damage = 0;
if(data!=null)
{
damage =int.Parse (data["attack"].ToString());
}
monsterHp -= damage;
QTEcount++;//QTE计数加一
isPlayer = false;
isMonster = true;
}
public void MonsterAttack(int id)//怪物宠物攻击
{
//人物宠物HP减少
Hashtable data = DataRecord.GetFightData(id);
int damage = 0;
if (data != null)
{
damage = int.Parse(data["attack"].ToString());
}
isMonster = false;
}
public void QTEevent() { //QTE:每完成一次指定任务自动攻击一次,共三次,任意一次失败之后结束QTE事件,重新开始计数
}
public void DoEscape()//逃跑
{
}
}