• 加载中...
  • 加入收藏
  • 网站地图
手机版 扫一扫
ゲームクリエイター

时间:2014年04月16日 信息来源:汇众云世界 点击: 加入收藏 】【 字体:
婧愮爜鍦板潃:璧勬簮閾炬帴


鐜板湪缇婄殑AI涓嶅瀹屽杽
甯屾湜鎰熷叴瓒g殑鏈嬪弸涓€璧疯璁篈I

AI閮ㄥ垎婧愮爜濡備笅

bool    NoHit();//纰版挒妫€娴?BR>bool    NoBody(int a);//闅滅妫€娴?BR>bool    eat();//鍚冪緤妫€娴?BR>int     Alive();//杩樻湁鍑犲彧缇?BR>bool    SheepAction();//缇婄殑琛屽姩
bool    hold(int key);//鏄惁宸茬粡鍗犳嵁璇ュ叧閿偣
bool    CanBeEat(int key);//鍒ゆ柇绉诲姩鍚庢槸鍚︿細琚悆
bool    UP(int key);//鍚戜笂鎵剧緤
bool    DOWN(int key);//鍚戜笅鎵剧緤
bool    LEFT(int key);//鍚戝乏鎵剧緤
bool    RIGHT(int key);//鍚戝彸鎵剧緤
bool    SaveTop(int key);//绉诲姩鍓嶄笂闈㈡槸鍚﹀畨鍏?BR>bool    SaveBelow(int key);//绉诲姩鍓嶄笅闈㈡槸鍚﹀畨鍏?BR>bool    SaveLeft(int key);//绉诲姩鍓嶅乏闈㈡槸鍚﹀畨鍏?BR>bool    SaveRight(int key);//绉诲姩鍓嶅彸闈㈡槸鍚﹀畨鍏?BR>bool    UPSAVE(int key);//绉诲姩鍚庝笂闈㈡槸鍚﹀畨鍏?BR>bool    DOWNSAVE(int key);//绉诲姩鍚庝笅闈㈡槸鍚﹀畨鍏?BR>bool    LEFTSAVE(int key);//绉诲姩鍚庡乏闈㈡槸鍚﹀畨鍏?BR>bool    RIGHTSAVE(int key);//绉诲姩鍚庡彸闈㈡槸鍚﹀畨鍏?BR>bool    WolfUp(int wolf);//鍒ゆ柇鐙肩殑涓婃柟鏄惁琚洿
bool    WolfDown(int wolf);//鍒ゆ柇鐙肩殑涓嬫柟鏄惁琚洿
bool    WolfLeft(int wolf);//鍒ゆ柇鐙肩殑宸︽柟鏄惁琚洿
bool    WolfRight(int wolf);//鍒ゆ柇鐙肩殑鍙虫柟鏄惁琚洿
int     getPos(int key);//鏍规嵁鐙兼垨缇婄殑缂栧彿鑾峰緱浣嶇疆缂栧彿
bool    WolfCanAction();//鍒ゆ柇鏄惁杩樻湁鐙煎彲浠ヨ鍔?BR>
// 缇婄殑琛屽姩
bool SheepAction()
{
 // 鍏堝垽鏂槸鍚︽湁缇婂浜庣嫾鍙d箣涓?鏈夌殑璇濆氨璺?BR> for (int i = 0; i<15; i++)
 {
  if (!SaveTop(i))
  {
   p[i].y -= 102;
   if (SaveTop(i) && SaveBelow(i) && SaveLeft(i) && SaveRight(i))
   {
    return true;
   }
   else
   {
    p[i].y += 102;
   }
  }
  if (!SaveBelow(i))
  {
   p[i].y += 102;
   if (SaveTop(i) && SaveBelow(i) && SaveLeft(i) && SaveRight(i))
   {
    return true;
   }
   else
   {
    p[i].y -= 102;
   }
  }
  if (!SaveLeft(i))
  {
   p[i].x -= 102;
   if (SaveTop(i) && SaveBelow(i) && SaveLeft(i) && SaveRight(i))
   {
    return true;
   }
   else
   {
    p[i].x += 102;
   }
  }
  if (!SaveRight(i))
  {
   p[i].x += 102;
   if (SaveTop(i) && SaveBelow(i) && SaveLeft(i) && SaveRight(i))
   {
    return true;
   }
   else
   {
    p[i].x -= 102;
   }
  }
 }
 //鍒ゆ柇鐙兼槸鍚﹁鍥?BR> for (int i = 15; i<18; i++)
 {
  if (!WolfUp(i))
  {
   if (UP(getPos(i)-5) || LEFT(getPos(i)-5) || RIGHT(getPos(i)-5))
   {
    return true;
   }
  }
  if (!WolfDown(i))
  {
   if (DOWN(getPos(i)+5) || LEFT(getPos(i)+5) || RIGHT(getPos(i)+5))
   {
    return true;
   }
  }
  if (!WolfLeft(i))
  {
   if (UP(getPos(i)-1) || DOWN(getPos(i)-1) || LEFT(getPos(i)-1))
   {
    return true;
   }
  }
  if (!WolfRight(i))
  {
   if (UP(getPos(i)+1) || DOWN(getPos(i)+1) || RIGHT(getPos(i)+1))
   {
    return true;
   }
  }
 }
 // 绗竴椤轰綅鍏抽敭鐐?BR> if (UP(6) || LEFT(6) || RIGHT(6) || DOWN(6))
 {
  return true;
 }
 else if(UP(8) || RIGHT(8) || LEFT(8) || DOWN(8))
 {
  return true;
 }
 else if (DOWN(16) || LEFT(16) || UP(16) || RIGHT(16))
 {
  return true;
 }
 else if (DOWN(18) || RIGHT(18) || UP(18) || LEFT(18))
 {
  return true;
 } 
 // 绗簩椤轰綅鍏抽敭鐐?BR> else if (LEFT(21) || RIGHT(21) || UP(21))
 {
  return true;
 }
 else if (RIGHT(23) || LEFT(23) || UP(23))
 {
  return true;
 }
 else if (DOWN(15) || UP(15))
 {
  return true;
 }
 else if (DOWN(19) || UP(19))
 {
  return true;
 }
 else if (UP(5) || DOWN(5))
 {
  return true;
 }
 else if (UP(9) || DOWN(9))
 {
  return true;
 }
 else if (LEFT(1) || RIGHT(1))
 {
  return true;
 }
 else if (RIGHT(3) || LEFT(3))
 {
  return true;
 }
 // 绗笁椤轰綅鍏抽敭鐐?BR> else if (UP(7) || DOWN(7))
 {
  return true;
 }
 else if (LEFT(11) || RIGHT(11))
 {
  return true;
 }
 else if (RIGHT(13) || LEFT(13))
 {
  return true;
 }
 else if (DOWN(17) || UP(17))
 {
  return true;
 }
 // 绗洓椤轰綅鍏抽敭鐐?BR> else if (DOWN(2) || LEFT(2) || RIGHT(2))
 {
  return true;
 }
 else if (UP(22) || LEFT(22) || RIGHT(22))
 {
  return true;
 }
 else if (RIGHT(10) || UP(10) || DOWN(10))
 {
  return true;
 }
 else if (LEFT(14) || UP(14) || DOWN(14))
 {
  return true;
 }
 // 浣欎笅涓€涓腑蹇冪偣鍜屽洓涓竟瑙掔偣
 else if (UP(12) || DOWN(12) || LEFT(12) || RIGHT(12))
 {
  return true;
 }
 else if (RIGHT(0) || DOWN(0))
 {
  return true;
 }
 else if (LEFT(4) || DOWN(4))
 {
  return true;
 }
 else if (UP(20) || RIGHT(20))
 {
  return true;
 }
 else if (UP(24) || LEFT(24))
 {
  return true;
 }
 // 鍒ゆ柇鍒拌繖閲岃鏄庡彧鏈? 8 16 18杩?涓叧閿偣鍙兘鏈夌緤浜?杈撳畾浜?BR> else if(DOWN(1) || UP(11) || LEFT(7) || RIGHT(5))
 {
  return true;
 }
 else if(DOWN(3) || UP(13) || LEFT(9) || RIGHT(7))
 {
  return true;
 }
 else if(DOWN(11) || UP(21) || LEFT(17) || RIGHT(15))
 {
  return true;
 }
 else if(DOWN(13) || UP(23) || LEFT(19) || RIGHT(17))
 {
  return true;
 } 
 return false;
}
上一篇::没有了
下一篇:极限编程20小时的作品
(作者:佚名 编辑:admin)

我有话说

新文章

门文章