var SwapUse, AlreadySwap,PartnerFai,FirstCombat: byte;
Point1X,Point1Y,Point2X,Point2Y: Word;
procedure LogOn;
begin
FirstCombat := 1;
Point1X := xxx;
Point1Y := xxx;
Point2X := xxx;
Point2Y := xxx;
end;
procedure Init;
begin
SetIsNotEat('ยาคืนวิญญาณ');
SetIsNotEat('ยาวิญญาณม่วง');
SetIsNotEat('คุกกี้เนย');
//SetIsNotEat('เนื้อแผ่น');
//SetIsCB('ผักกาดขาวดอง');
SetIsDp('พรมเทพท่อง');
SetIsDp('พรมจัวจวิ้น');
SetIsCB('กระดาษซวน');
SetIsCB('เสาคานพันปี');
SetIsCB('หนังขนฮวน');
SwapUse := 1;
PartnerFai := 100; //ซื่อน้อยกว่า<<จะตัดสาย
AlreadySwap := 0;
echoChat('koRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
procedure BattleStarted;
begin
end;
procedure MyAttack;
var m: TCombatMonster;
sk: String;
n : byte;
begin
m := Combat.FindBestMonster;
n := Combat.Size;
if ((MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp <0.25*MyPartner.MaxHp) or (FirstCombat = 1) or (n >5))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 > 1100)) then
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,'มือเปล่า')
else
if ((SwapUse = 1) and (n = 1) and (m.hp < 1100) and (AlreadySwap = 0))then
begin
SwapLucky('on');
AlreadySwap := 1;
end;
if ((SwapUse = 1) and (n = 1) and (m.hp < 1100) and (AlreadySwap = 1)) then
begin
SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,'ป้องกัน');
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 > 1100) then
begin
sk := 'ป้องกัน';
end
else
begin
sk := 'มือเปล่า';
end;
end;
SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
end;
procedure BattleStoped;
begin
ClickNpc(1);
ClickNpc(5);
if (SwapUse = 1) then
begin
if (FirstCombat = 1) then
begin
SwapLucky('logon');
FirstCombat := 0;
end
else
begin
SwapLucky('off');
end;
end;
AlreadySwap := 0;
AutoHeal;
AutoEat;
doDrop;
CheckDisconnect;
if (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 อีกประมาณ 15 วินาที ถ้าคุณเลือก Auto Reconnect',clBlack);
Delay(1000);
Reconnect(15);
end
else
begin
Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
end;
end;
end;
Procedure OnTimer;
Begin
end;
procedure doDrop;
var i:Byte;
Slot: TMyItem;
begin
for i := 1 to 25 do
begin
Slot := MyItems[i];
if (Slot.Num >= 40) then
begin
if (Slot.Name = 'พรมจัวจวิ้น')
or (Slot.Name = 'พรมเทพท่อง')
or (Slot.Name = 'ผงช่วยแผล')
or (Slot.Name = 'ยาดอกไม้แดง')
or (Slot.Name = 'คุกกี้เนย')
then Drop(i,40);
//แก้ตรง45 เป็น 50 ให้ทิ้งประมาณนี้
end;
end;
end;
procedure GMAppear(GMName: String; MapId,X,Y: Integer);
begin
if MapId = MyPlayer.MapId then Reconnect(60*60*30);
end;
procedure PlayerOffline(PlayerName: String);
begin
//if (PlayerName = 'XXXX') then Reconnect(10);
end;
procedure CheckDisconnect;
begin
if (MyPlayer.Hp < 0.25*MyPlayer.MaxHp) or (MyPartner.Hp < 0.25*MyPartner.MaxHp) then
begin
Echo('Reconnect : เลือดไม่พอเลี้ยงชีพแล้ว !!',clBlack);
AutoHeal;
//Reconnect(3);
end;
if (MyPartner.Fai < PartnerFai) then
begin
Echo('Disconnected : ขุนพลซื้อสัตย์ต่ำกว่าที่กำหนด !!',clBlack);
Disconnect;
end;
end;
begin
Init;
end.
[/quote]