資源簡介
對戰坦克大戰(vc++)

代碼片段和文件信息
#include?“global.h“
#include?“aigenerator.h“
//-----------------------------------------------------------------------------
//?Name:?
//?Desc:?
//-----------------------------------------------------------------------------
CAiGenerator::CAiGenerator()?{
SetRect(?&m_rtAvoid[0]?0?0?0?0?);
m_pAim?=?NULL;
m_nAimProb?=?0;
m_nTrackProb?=?3;
m_nMaxProb?=?DEFMAXPROB;
m_nCurrentProb?=?0;
ZeroMemory(CmdProbs?sizeof(int)*6);
m_nFireMaxProb?=?16; //?maybe?1?shot?per?step?of?2?block?at?speed?of?4
m_nFireProb?=?1;
m_bLastBlock?=?false;
m_LastCmd.cmd?=?CMD_DOWN; //?!!!Don‘t?change?this
m_LastCmd.fire?=?false;
m_LastAim?=?NULL;
}
//-----------------------------------------------------------------------------
//?Name:?
//?Desc:?
//-----------------------------------------------------------------------------
CAiGenerator::~CAiGenerator()?{
}
//-----------------------------------------------------------------------------
//?Name:?
//?Desc:?
//-----------------------------------------------------------------------------
bool?CAiGenerator::CreateGenerator(?CObjTank?*ptk?RECT?scope?)?{
m_pHost?=?ptk;
m_rtScope?=?scope;
m_LastPos?=?ptk->GetRect();
return?true;
}
//-----------------------------------------------------------------------------
//?Name:?
//?Desc:?
//-----------------------------------------------------------------------------
void?CAiGenerator::SetAim(?CMobileobject?*pmo?int?prob?)?{
m_pAim?=?pmo;
if?(?prob?0?)
m_nAimProb?=?m_nMaxProb;
else
m_nAimProb?=?prob;
}
//-----------------------------------------------------------------------------
//?Name:?
//?Desc:?
//-----------------------------------------------------------------------------
void?CAiGenerator::SetAvoid?(?RECT rt?)?{
//?r?d?u?l
SetRect(?&m_rtAvoid[DIR_RIGHT]?0?rt.top-24?rt.left?rt.bottom-24?);
SetRect(?&m_rtAvoid[DIR_DOWN]?rt.left-24?0?rt.right-24?rt.top?);
SetRect(?&m_rtAvoid[DIR_UP]?rt.left-24?rt.top?rt.right-24?g_frameWidth?);
SetRect(?&m_rtAvoid[DIR_LEFT]?rt.left?rt.top-24?g_frameWidth?rt.bottom-24?);
}
//-----------------------------------------------------------------------------
//?Name:?
//?Desc:?
//-----------------------------------------------------------------------------
TANKCMD?CAiGenerator::Generator(?CMobileobject?**ppmos?int?num?)
{
TANKCMD curcmd?blockcmd;
bool analyzecmd?=?false;
//?Test?last?command‘s?effect
if?(?m_LastCmd.cmd?==?CMD_NONE?)?{
blockcmd.cmd?=?CMD_NONE;
analyzecmd?=?true;
}?
else?{
//?straight?forward
if?(?m_LastPos.left?!=?m_pHost->GetRect().left?||?
m_LastPos.top?!=?m_pHost->GetRect().top?)?{
curcmd.cmd?=?m_LastCmd.cmd;
if?(?rand()?%?m_nFireMaxProb? curcmd.fire?=?true;
else
curcmd.fire?=?false;
m_bLastBlock?=?false;
}?
//?block?just?now
else?if?(?!m_bLastBlock?)?{
m_bLastBlock?=?true;
curcmd.cmd?=?m_Las
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????6110??2003-05-11?07:23??Tanker\God\Alpha3\aigenerator.cpp
?????文件???????1253??2003-05-11?07:14??Tanker\God\Alpha3\aigenerator.h
?????文件???????4238??2013-03-19?19:28??Tanker\God\Alpha3\Alpha3.dsp
?????文件????????535??2003-03-25?02:41??Tanker\God\Alpha3\Alpha3.dsw
?????文件???12250112??2013-03-30?14:01??Tanker\God\Alpha3\Alpha3.ncb
?????文件??????49664??2013-03-30?14:01??Tanker\God\Alpha3\Alpha3.opt
?????文件???????5053??2013-03-30?13:57??Tanker\God\Alpha3\Alpha3.plg
?????文件????????877??2013-03-30?13:46??Tanker\God\Alpha3\Alpha3.sln
????..A..H.?????15360??2013-03-30?14:01??Tanker\God\Alpha3\Alpha3.suo
?????文件???????7848??2013-03-30?13:46??Tanker\God\Alpha3\Alpha3.vcproj
?????文件???????1409??2013-03-30?14:01??Tanker\God\Alpha3\Alpha3.vcproj.SGD-PC.孫廣東.user
?????文件???????3676??2003-03-29?08:56??Tanker\God\Alpha3\collision.txt
?????文件??????34107??2004-09-27?03:27??Tanker\God\Alpha3\console.cpp
?????文件???????3788??2003-06-25?15:39??Tanker\God\Alpha3\console.h
?????文件??????29937??2003-03-27?07:50??Tanker\God\Alpha3\ddutil.cpp
?????文件???????5085??2013-03-29?22:11??Tanker\God\Alpha3\ddutil.h
?????文件???????3365??2013-03-30?13:50??Tanker\God\Alpha3\Debug\aigenerator.obj
?????文件????????381??2013-03-30?13:50??Tanker\God\Alpha3\Debug\Alpha3.exe.intermediate.manifest
?????文件??????17912??2013-03-30?13:50??Tanker\God\Alpha3\Debug\BuildLog.htm
?????文件??????37107??2013-03-30?13:50??Tanker\God\Alpha3\Debug\console.obj
?????文件??????15011??2013-03-30?13:50??Tanker\God\Alpha3\Debug\ddutil.obj
?????文件??????19610??2013-03-30?13:50??Tanker\God\Alpha3\Debug\dsutil.obj
?????文件??????10001??2013-03-30?13:50??Tanker\God\Alpha3\Debug\dxutil.obj
?????文件??????11230??2013-03-30?13:50??Tanker\God\Alpha3\Debug\mapinfo.obj
?????文件???????5152??2013-03-30?13:50??Tanker\God\Alpha3\Debug\msglist.obj
?????文件???????5754??2013-03-30?13:50??Tanker\God\Alpha3\Debug\network.obj
?????文件??????10638??2013-03-30?13:50??Tanker\God\Alpha3\Debug\ob
?????文件???????1357??2013-03-30?13:50??Tanker\God\Alpha3\Debug\resinfo.obj
?????文件?????986472??2013-03-30?13:50??Tanker\God\Alpha3\Debug\TankRes.res
?????文件?????281600??2013-03-30?13:50??Tanker\God\Alpha3\Debug\vc90.idb
............此處省略95個文件信息
評論
共有 條評論