📄 ai_entity.cpp
字号:
#include "Ai_Entity.h"
#include "stdlib.h"
#include "time.h"
Ai_Entity::Ai_Entity(){
}
Ai_Entity::~Ai_Entity(){
}
void Ai_Entity::New(int thetype){
type = thetype;
if (thetype == kRedAnt){
row = kRedHomeRow;
column = kRedHomeColumn;
}else if(thetype == kBlackAnt){
row = kBlackHomeRow;
column = kBlackHomeColumn;
}
state = kGoForFood;
}
void Ai_Entity::action(){
srand(time(NULL));
if (state == kDead){
}else if (state == kGoForFood){
//随机的移动
antworld[row][column] = kGround;
row += (-1)*((rand()%3)-1);
if (row == kMaxRows)
row--;
if (row == -1)
row++;
column += (-1)*((rand()%3)-1);
if (column == kMaxColumns)
column--;
if (column == kMaxColumns)
column++;
if (antworld[row][column] == kFood)
state = kGoHome;
antworld[row][column] = 'R';
}else if(state == kGoHome){
if (type == kRedAnt){
if (row > kRedHomeRow){
row--;
}else{
row++;
}
if (column > kRedHomeColumn){
column--;
}else{
column++;
}
if (antworld[row][column] = kRedHome){
antCount++;
state = kGoForWater;
aientitylist[antCount].New(kRedAnt);
antworld[row][column] = 'B';
}
}else{
if (row > kBlackHomeRow){
row--;
}else{
row++;
}
if (column > kBlackHomeColumn){
column--;
}else{
column++;
}
if (antworld[row][column] = kBlackHome)
state = kGoForWater;
antCount++;
state = kGoForWater;
aientitylist[antCount].New(kBlackAnt);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -