แก้ไขค่าโจมตีจาก MyDamage := xxx;
var SwarpUse, MyDamage, AlreadySwap, PartnerFai: byte;
procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาเก้าหยาง');
SetIsCB('หนังแพะเขาใหญ่');
SwapUse:= 1;
PartnerFai:= 100;
MyDamage := 230;
AlreadySwap := 0;
echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
Procedure Logon;
begin
Sendaction(48);
end;
procedure Getmyitems;
begin
Swaplucky('logon');
end;
procedure BattleStarted;
begin
CheckDisconnect;
end;
procedure MyAttack;
var m : TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
if (MyPlayer.Sp > 10)
then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end;
if ((SwapUse = 1) and (n = 1) and (m.hp > MyDamage)) then
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk)
else if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage)) then
begin
SwapLucky('on');
AlreadySwap := 1;
end;
if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage) and (AlreadySwap = 1)) then
begin
sk := 'ป้องกัน';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
if (SwapUse = 0) or (n >1) then
begin
sk := 'มือเปล่า';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
end;
procedure MyPartnerAttack;
var m: TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if ((SwapUse = 1) and (n = 1)) then
begin
if(m.hp > MyDamage) then
begin
sk := 'ป้องกัน';
end
else
begin
sk := 'มือเปล่า';
end;
end;
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
end;
procedure BattleStoped;
begin
AlreadySwap := 0;
SwapLucky('off');
if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
begin
AutoEat;
end;
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
AutoEat;
AutoHeal;
end;
procedure SwapLucky(taketype :string);
var slotno,LuckyStatus : Byte;
Slot: TMyItem;
begin
slotno := 25;
Slot := MyItems[slotno];
if (taketype = 'on') then
begin
Equip(slotno,0);
LuckyStatus := 1;
Echo('ใส่ '+Slot.name+' เรียบร้อย',clBlack);
end;
if (taketype = 'off') then
begin
if (LuckyStatus = 1) then
begin
Equip(slotno,0);
LuckyStatus := 0;
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
end;
end;
if (taketype = 'logon') then
begin
if (Slot.Id = 23024) then
begin
SwapUse := 0;
Echo('[รายงาน] : ตราพังแล้ว กลับไปใช้ระบบปกติ!',clBlack);
end
else if ((Slot.Id <> 23085) and (Slot.Id <> 23023)) then
begin
Equip(slotno,0);
Echo('ใส่ไอเท็มไม่ถูกต้อง มีการเปลี่ยนแปลง',clBlack);
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
Echo('เกมจะ Disconect และจะ Reconect อีกประมาณ 5 วินาที ถ้าคุณเลือก Auto Reconnect',clBlack);
Delay(1000);
Reconnect(5);
end
else
begin
Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
end;
end;
end;
procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
AutoEat;
if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
Disconnect;
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;
begin
Init;
end.
procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาเก้าหยาง');
SetIsCB('หนังแพะเขาใหญ่');
SwapUse:= 1;
PartnerFai:= 100;
MyDamage := 230;
AlreadySwap := 0;
echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
Procedure Logon;
begin
Sendaction(48);
end;
procedure Getmyitems;
begin
Swaplucky('logon');
end;
procedure BattleStarted;
begin
CheckDisconnect;
end;
procedure MyAttack;
var m : TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
if (MyPlayer.Sp > 10)
then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end;
if ((SwapUse = 1) and (n = 1) and (m.hp > MyDamage)) then
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk)
else if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage)) then
begin
SwapLucky('on');
AlreadySwap := 1;
end;
if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage) and (AlreadySwap = 1)) then
begin
sk := 'ป้องกัน';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
if (SwapUse = 0) or (n >1) then
begin
sk := 'มือเปล่า';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
end;
procedure MyPartnerAttack;
var m: TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if ((SwapUse = 1) and (n = 1)) then
begin
if(m.hp > MyDamage) then
begin
sk := 'ป้องกัน';
end
else
begin
sk := 'มือเปล่า';
end;
end;
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
end;
procedure BattleStoped;
begin
AlreadySwap := 0;
SwapLucky('off');
if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
begin
AutoEat;
end;
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
AutoEat;
AutoHeal;
end;
procedure SwapLucky(taketype :string);
var slotno,LuckyStatus : Byte;
Slot: TMyItem;
begin
slotno := 25;
Slot := MyItems[slotno];
if (taketype = 'on') then
begin
Equip(slotno,0);
LuckyStatus := 1;
Echo('ใส่ '+Slot.name+' เรียบร้อย',clBlack);
end;
if (taketype = 'off') then
begin
if (LuckyStatus = 1) then
begin
Equip(slotno,0);
LuckyStatus := 0;
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
end;
end;
if (taketype = 'logon') then
begin
if (Slot.Id = 23024) then
begin
SwapUse := 0;
Echo('[รายงาน] : ตราพังแล้ว กลับไปใช้ระบบปกติ!',clBlack);
end
else if ((Slot.Id <> 23085) and (Slot.Id <> 23023)) then
begin
Equip(slotno,0);
Echo('ใส่ไอเท็มไม่ถูกต้อง มีการเปลี่ยนแปลง',clBlack);
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
Echo('เกมจะ Disconect และจะ Reconect อีกประมาณ 5 วินาที ถ้าคุณเลือก Auto Reconnect',clBlack);
Delay(1000);
Reconnect(5);
end
else
begin
Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
end;
end;
end;
procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
AutoEat;
if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
Disconnect;
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;
begin
Init;
end.
เดินจุด+สลับตรา (ดูวิธีการแก้ไขจากกระทู้ walk for level)
var SwapUse, MyDamage, AlreadySwap, PartnerFai: byte;
var Point1X,Point1Y,Point2X,Point2Y: Word;
Procedure Logon;
begin
Point1X := 1802;
Point1Y := 1115;
Point2X := 1782;
Point2Y := 815;
end;
procedure Getmyitems;
begin
Swaplucky('logon');
end;
procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาเก้าหยาง');
SetIsCB('หนังแพะเขาใหญ่');
SwapUse:= 1;
PartnerFai:= 100;
MyDamage := 230;
AlreadySwap := 0;
echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
procedure BattleStarted;
begin
CheckDisconnect;
end;
procedure MyAttack;
var m : TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
if (MyPlayer.Sp > 10)
then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end;
if ((SwapUse = 1) and (n = 1) and (m.hp > MyDamage)) then
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk)
else if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage)) then
begin
SwapLucky('on');
AlreadySwap := 1;
end;
if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage) and (AlreadySwap = 1)) then
begin
sk := 'ป้องกัน';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
if (SwapUse = 0) or (n >1) then
begin
sk := 'มือเปล่า';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
end;
procedure MyPartnerAttack;
var m: TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if ((SwapUse = 1) and (n = 1)) then
begin
if(m.hp > MyDamage) then
begin
sk := 'ป้องกัน';
end
else
begin
sk := 'มือเปล่า';
end;
end;
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
end;
procedure BattleStoped;
begin
AlreadySwap := 0;
SwapLucky('off');
if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
begin
AutoEat;
end;
if (MyPlayer.Hp < 0.50*MyPlayer.MaxHp) or (MyPartner.Hp < 0.50*MyPartner.MaxHp) then
begin
AutoEat;
AutoHeal;
end;
if (MyPlayer.Hp > 0.25*MyPlayer.MaxHp) or (MyPartner.Hp > 0.25*MyPartner.MaxHp) then
begin
Echo('เดิน',clRed);
if (MyPlayer.X = Point1X) and (MyPlayer.Y = Point1Y)
then Walk(Point2X,Point2Y)
else Walk(Point1X,Point1Y);
end;
end;
procedure SwapLucky(taketype :string);
var slotno,LuckyStatus : Byte;
Slot: TMyItem;
begin
slotno := 25;
Slot := MyItems[slotno];
if (taketype = 'on') then
begin
Equip(slotno,0);
LuckyStatus := 1;
Echo('ใส่ '+Slot.name+' เรียบร้อย',clBlack);
end;
if (taketype = 'off') then
begin
if (LuckyStatus = 1) then
begin
Equip(slotno,0);
LuckyStatus := 0;
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
end;
end;
if (taketype = 'logon') then
begin
if (Slot.Id = 23024) then
begin
SwapUse := 0;
Echo('[รายงาน] : ตราพังแล้ว กลับไปใช้ระบบปกติ!',clBlack);
end
else if ((Slot.Id <> 23085) and (Slot.Id <> 23023)) then
begin
Equip(slotno,0);
Echo('ใส่ไอเท็มไม่ถูกต้อง มีการเปลี่ยนแปลง',clBlack);
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
Echo('เกมจะ Disconect และจะ Reconect อีกประมาณ 5 วินาที ถ้าคุณเลือก Auto Reconnect',clBlack);
Delay(1000);
Reconnect(5);
end
else
begin
Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
end;
end;
end;
procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
AutoEat;
if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
Disconnect;
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;
begin
Init;
end.
var Point1X,Point1Y,Point2X,Point2Y: Word;
Procedure Logon;
begin
Point1X := 1802;
Point1Y := 1115;
Point2X := 1782;
Point2Y := 815;
end;
procedure Getmyitems;
begin
Swaplucky('logon');
end;
procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาเก้าหยาง');
SetIsCB('หนังแพะเขาใหญ่');
SwapUse:= 1;
PartnerFai:= 100;
MyDamage := 230;
AlreadySwap := 0;
echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
procedure BattleStarted;
begin
CheckDisconnect;
end;
procedure MyAttack;
var m : TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
if (MyPlayer.Sp > 10)
then SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'วิชาหลบหนี')
else SendAttack(MyPlayer.Row,MyPlayer.Col,MyPlayer.Row,MyPlayer.Col,'หลบหนี');
end;
if ((SwapUse = 1) and (n = 1) and (m.hp > MyDamage)) then
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk)
else if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage)) then
begin
SwapLucky('on');
AlreadySwap := 1;
end;
if ((SwapUse = 1) and (n = 1) and (m.hp < MyDamage) and (AlreadySwap = 1)) then
begin
sk := 'ป้องกัน';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
if (SwapUse = 0) or (n >1) then
begin
sk := 'มือเปล่า';
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;
end;
procedure MyPartnerAttack;
var m: TCombatMonster;
n : byte;
sk : string;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
sk := 'มือเปล่า';
if ((SwapUse = 1) and (n = 1)) then
begin
if(m.hp > MyDamage) then
begin
sk := 'ป้องกัน';
end
else
begin
sk := 'มือเปล่า';
end;
end;
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
end;
procedure BattleStoped;
begin
AlreadySwap := 0;
SwapLucky('off');
if (MyPlayer.Sp < 0.25*MyPlayer.MaxSp) or (MyPartner.Sp < 0.25*MyPartner.MaxSp) then
begin
AutoEat;
end;
if (MyPlayer.Hp < 0.50*MyPlayer.MaxHp) or (MyPartner.Hp < 0.50*MyPartner.MaxHp) then
begin
AutoEat;
AutoHeal;
end;
if (MyPlayer.Hp > 0.25*MyPlayer.MaxHp) or (MyPartner.Hp > 0.25*MyPartner.MaxHp) then
begin
Echo('เดิน',clRed);
if (MyPlayer.X = Point1X) and (MyPlayer.Y = Point1Y)
then Walk(Point2X,Point2Y)
else Walk(Point1X,Point1Y);
end;
end;
procedure SwapLucky(taketype :string);
var slotno,LuckyStatus : Byte;
Slot: TMyItem;
begin
slotno := 25;
Slot := MyItems[slotno];
if (taketype = 'on') then
begin
Equip(slotno,0);
LuckyStatus := 1;
Echo('ใส่ '+Slot.name+' เรียบร้อย',clBlack);
end;
if (taketype = 'off') then
begin
if (LuckyStatus = 1) then
begin
Equip(slotno,0);
LuckyStatus := 0;
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
end;
end;
if (taketype = 'logon') then
begin
if (Slot.Id = 23024) then
begin
SwapUse := 0;
Echo('[รายงาน] : ตราพังแล้ว กลับไปใช้ระบบปกติ!',clBlack);
end
else if ((Slot.Id <> 23085) and (Slot.Id <> 23023)) then
begin
Equip(slotno,0);
Echo('ใส่ไอเท็มไม่ถูกต้อง มีการเปลี่ยนแปลง',clBlack);
Echo('ถอด '+Slot.name+' เรียบร้อย',clBlack);
Echo('เกมจะ Disconect และจะ Reconect อีกประมาณ 5 วินาที ถ้าคุณเลือก Auto Reconnect',clBlack);
Delay(1000);
Reconnect(5);
end
else
begin
Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
end;
end;
end;
procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('AutoHeal : เติมเลือดด่วน ไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
AutoEat;
if (MyPlayer.Hp < 0.10*MyPlayer.MaxHp) or (MyPartner.Hp < 0.10*MyPartner.MaxHp) then
Echo('Disconnected : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
Disconnect;
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;
begin
Init;
end.