Mã: double DisconnectFlag = 0.3; // Disconnect when current HP is below 30% double hpFractionEat = 0.8; //Eat HP when current HP<= 80% double spFractionEat = 0.8; double hpFraction = 0.95; //Eat until current HP >= 95 % double spFraction = 0.95; byte DisconFai = 00; // Faith of warrior to disconnect string state=""; byte pt_count = 0; uint tv1 = 0; //là QS luôn uint tv2 = 0; uint tv3 = 0; uint tv4 = 0; uint maxpt = 0; //so thanh vien public override void MyAttack() { CharacterInfo MyChar = ts.Character; ts.SendAttack(MyChar.Row, MyChar.Col, 0, 2, 10000); } public override void MyPartnerAttack() { CharacterInfo MyWarrior = ts.CurrentPartner; ts.SendAttack(MyWarrior.Row, MyWarrior.Col, 0, 2, 10000); } public override void BattleStarted() { ts.SetTimerOnOff(false); } public override void BattleStoped() { ProcessInventoryAction(); AutoEatFood(); ts.ClickOnNPC(3); ts.ClickOnNPC(3); } public override void doRecvQuestion() { state="BTQ"; } public override void ResponseAnswer() { int dtime=get_random(1,5); debug("Delay "+dtime.ToString()+" before answer."); ts.delay(dtime*1000); string tmp=ts.LastQuestion.Replace("=?",""); int ans=ts.Eval(tmp); byte ans_index=Convert.ToByte(ts.LastAnswers[ans.ToString()]); debug("Answer choice:"+ans_index.ToString()); ts.Answer(ans_index); } public override void onPlayerWalk(uint uid, ushort x, ushort y) { if (uid > 1 && uid < 501) { debug("GM den roi chay thoi",0xFF0000); ts.Disconnect(false); } } public override void PartyStop(uint playerid) { if (playerid == tv1 || playerid == tv2 || playerid == tv3 || playerid == tv4) {ts.Disconnect();} } public override void Start() { ts.ClickOnNPC(3); } public override void FinishAnswer() { } public override void NpcDialogMenu(ushort DialogId) { debug("Menu ID="+DialogId.ToString()); if (DialogId==1) {ts.SelectChoice(1); ts.SendEnd(); } } public override void NpcDialog(ushort DialogId) { debug("Dialog ID="+DialogId.ToString()); if(DialogId==10152){ ts.SendEnd(); } } public override void OnTimer() { ts.AcceptParty(tv1); ts.AcceptParty(tv2); ts.AcceptParty(tv3); ts.AcceptParty(tv4); } public override void AcceptedParty(uint playerid) { if(playerid == tv1) {ts.Sena(playerid);} pt_count++; if(pt_count==maxpt){ debug(" So thanh vien la : " + pt_count ,0x0000FF); Start();} else{ debug(" So thanh vien la : " + pt_count ,0x0000FF); } } public override void InitBot() { ts.SetTimerOnOff(true); ts.SetReconnectTime(1); ts.SetMaxIdleTime(20); debug(" S? con ma : " + ts.Character.ghost ,0xFF0000) ; } Đây là scr bot DDA của anh DVT, giờ em muốn pt2 người đánh ở đó thôi, mà sao em không làm thế nào được vậy ? nó cứ phải pt5 mới đánh àh, ai biết làm sao để pt2 đánh lun hem ?
tui biet gi chet lien do ..................................................... cau bai khoi tru diem ........................................................................................................................................... Đây là scr bot DDA của anh DVT, giờ em muốn pt2 người đánh ở đó thôi, mà sao em không làm thế nào được vậy ? nó cứ phải pt5 mới đánh àh, ai biết làm sao để pt2 đánh lun hem ?
Sửa lại chỗ này PHP: uint tv1 = 0; //là QS luôn //uint tv2 = 0; //uint tv3 = 0; //uint tv4 = 0; uint maxpt = 1; //so thanh vien và chỗ này nữa PHP: public override void OnTimer() { ts.AcceptParty(tv1); //ts.AcceptParty(tv2); //ts.AcceptParty(tv3); //ts.AcceptParty(tv4); }
PHP: double DisconnectFlag = 0.3; // Disconnect when current HP is below 30% double hpFractionEat = 0.8; //Eat HP when current HP<= 80% double spFractionEat = 0.8; double hpFraction = 0.95; //Eat until current HP >= 95 % double spFraction = 0.95; byte DisconFai = 00; // Faith of warrior to disconnect string state=""; byte pt_count = 0; uint tv1 = 0; //là QS luôn uint maxpt = 1; //so thanh vien public override void MyAttack() { CharacterInfo MyChar = ts.Character; ts.SendAttack(MyChar.Row, MyChar.Col, 0, 2, 10000); } public override void MyPartnerAttack() { CharacterInfo MyWarrior = ts.CurrentPartner; ts.SendAttack(MyWarrior.Row, MyWarrior.Col, 0, 2, 10000); } public override void BattleStarted() { ts.SetTimerOnOff(false); } public override void BattleStoped() { ProcessInventoryAction(); AutoEatFood(); ts.ClickOnNPC(3); ts.ClickOnNPC(3); } public override void doRecvQuestion() { state="BTQ"; } public override void ResponseAnswer() { int dtime=get_random(1,5); debug("Delay "+dtime.ToString()+" before answer."); ts.delay(dtime*1000); string tmp=ts.LastQuestion.Replace("=?",""); int ans=ts.Eval(tmp); byte ans_index=Convert.ToByte(ts.LastAnswers[ans.ToString()]); debug("Answer choice:"+ans_index.ToString()); ts.Answer(ans_index); } public override void onPlayerWalk(uint uid, ushort x, ushort y) { if (uid > 1 && uid < 501) { debug("GM den roi chay thoi",0xFF0000); ts.Disconnect(false); } } public override void PartyStop(uint playerid) { if (playerid == tv1 || playerid == tv2 || playerid == tv3 || playerid == tv4) {ts.Disconnect();} } public override void Start() { ts.ClickOnNPC(3); } public override void FinishAnswer() { } public override void NpcDialogMenu(ushort DialogId) { debug("Menu ID="+DialogId.ToString()); if (DialogId==1) {ts.SelectChoice(1); ts.SendEnd(); } } public override void NpcDialog(ushort DialogId) { debug("Dialog ID="+DialogId.ToString()); if(DialogId==10152){ ts.SendEnd(); } } public override void OnTimer() { ts.AcceptParty(tv1); } public override void AcceptedParty(uint playerid) { if(playerid == tv1) {ts.Sena(playerid);} pt_count++; if(pt_count==maxpt){ debug(" So thanh vien la : " + pt_count ,0x0000FF); Start();} else{ debug(" So thanh vien la : " + pt_count ,0x0000FF); } } public override void InitBot() { ts.SetTimerOnOff(true); ts.SetReconnectTime(1); ts.SetMaxIdleTime(20); debug(" S? con ma : " + ts.Character.ghost ,0xFF0000) ; } bạn điền id cần pt vào nhé