ไปที่เนื้อหา


รูปภาพ

Script Quest


  • กรุณาลงชื่อเข้าใช้เพื่อตอบกระทู้
มี 23 โพสต์ตอบกลับกระทู้นี้

#21 yahoo

yahoo

    จอมยุทธใหม่

  • Members
  • 2 โพสต์

โพสต์เมื่อ 12 June 2007 - 01:32:29 AM

มีสคริปภูตินพกาฬมั้ยครับถ้ายังไงขอหน่อยนะครับผม

#22 Roekytoya

Roekytoya

    ง่ออ๋อง ซุนกวน

  • Members
  • 261 โพสต์

โพสต์เมื่อ 05 November 2007 - 08:37:42 PM

ถ้าจะเขียนตรงเดินเข้าออก ตรงบ้านจูล่ง นี่จะต้องเขียนอย่างไรครับ

ผมเขียนผิดตรงไหนเหรอครับ บอทถึงคุยได้แต่ไม่ยอมตอบเลือกช้อยรบกวนช่วยตอบหน่อยนะครับ


var i: Byte;

procedure Logon;
begin
    i := 0;
end;

procedure OnTimer;
begin
    Inc(i);
    if (i = 2) then Warp(7);
end;

procedure NpcDialog(DialogId: Integer);
begin
    if (DialogId = 10052) then SendDialogEnd;  
    if (DialogId = 10055) then
begin
    SendDialogEnd;
    SendDialogEnd;
end;
end;

procedure NpcDialogMenu(DialogId: Integer);
begin
    SelectDialogChoice(1);
    SendDialogEnd;
end;

begin
    echoChat('จูล่ง.txt โหลดเสร็จแล้วครับ',clRed);
end.


#23 •B€AST-09•

•B€AST-09•

    ซาลาเปาเนื้อ

  • Members
  • 8 โพสต์

โพสต์เมื่อ 07 November 2007 - 05:38:42 PM

(Mangtom @ Jan 4 2007, 04:47 PM) ดูโพสต์

สคริปหลักแบบปาตี้ ตรงนี้ผม+สลับตราเข้าไปด้วยสามารถนำไปปรับแต่งได้ง่าย

uses   '.\Script\ขงเบ้ง.txt';
var   SwapUse : Byte;

Procedure Logon;
begin
   Sendaction(48);
End;

procedure getmyitems;
begin
    Swaplucky('logon');
end;

procedure Init;
begin
   SetIsNotEat('ยาคืนวิญญาณ');
   SetIsNotEat('ยาวิญญาณม่วง');
   SetIsCB('สาลี่พลังปราณ');
   SetIsCB('คุกกี้เนย');
   SetIsCB('ผงช่วยแผล');
   SetIsCB('ยาดอกไม้แดง');
   SetIsDP('พลุรื่นรมย์');
   SwapUse := 1;
   echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
  
procedure MyAttack;
var m: TCombatMonster;
    n: Byte;
    sk : String;
begin
   m := Combat.FindF1Monster;
   n := Combat.Size;
   sk := 'มือเปล่า';        
if ((SwapUse = 1) and (n = 3)) then SwapLucky('on')
else
    SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;

procedure MyPartnerAttack;
var   m: TCombatMonster;
   sk: String;
begin
   m := Combat.FindF1Monster;
   sk := 'มือเปล่า';
   SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
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(1);
   end
      else
   begin
     Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
   end;
    end;
end;

//---------------------------------------------//

procedure BattleStoped;
begin
   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;
end;

procedure PlayerOffline(PlayerName: String);
begin
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
end;

begin
   Init;
end.



ตรงนี้ผมจะแก้เอาสลับตราออกไงคับขอวิธีแก้หน่อยเพราะเวลาเปิดแล้วมันตัดออกเรื่อยๆเลยอะคับ

แล้วก็ถ้าต้องการจะเซ็ตให้ตี npc ที่อยู่ตำแหน่งเป็น row , col เซ็ตรงไหนอะคับ ขอบคุณล่วงหน้าคับ

#24 •B€AST-09•

•B€AST-09•

    ซาลาเปาเนื้อ

  • Members
  • 8 โพสต์

โพสต์เมื่อ 07 November 2007 - 05:39:39 PM

(Mangtom @ Jan 4 2007, 04:47 PM) ดูโพสต์

สคริปหลักแบบปาตี้ ตรงนี้ผม+สลับตราเข้าไปด้วยสามารถนำไปปรับแต่งได้ง่าย

uses   '.\Script\ขงเบ้ง.txt';
var   SwapUse : Byte;

Procedure Logon;
begin
   Sendaction(48);
End;

procedure getmyitems;
begin
    Swaplucky('logon');
end;

procedure Init;
begin
   SetIsNotEat('ยาคืนวิญญาณ');
   SetIsNotEat('ยาวิญญาณม่วง');
   SetIsCB('สาลี่พลังปราณ');
   SetIsCB('คุกกี้เนย');
   SetIsCB('ผงช่วยแผล');
   SetIsCB('ยาดอกไม้แดง');
   SetIsDP('พลุรื่นรมย์');
   SwapUse := 1;
   echoChat('KoRn Bot โหลดเสร็จแล้วครับ',clRed);
end;
  
procedure MyAttack;
var m: TCombatMonster;
    n: Byte;
    sk : String;
begin
   m := Combat.FindF1Monster;
   n := Combat.Size;
   sk := 'มือเปล่า';        
if ((SwapUse = 1) and (n = 3)) then SwapLucky('on')
else
    SendAttack(MyPlayer.Row,MyPlayer.Col,m.Row,m.Col,sk);
end;

procedure MyPartnerAttack;
var   m: TCombatMonster;
   sk: String;
begin
   m := Combat.FindF1Monster;
   sk := 'มือเปล่า';
   SendAttack(MyPartner.Row,MyPartner.Col,m.Row,m.Col,sk);
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(1);
   end
      else
   begin
     Echo('ใส่ไอเท็มถูกต้อง ไม่มีการเปลี่ยนแปลง',clBlack);
   end;
    end;
end;

//---------------------------------------------//

procedure BattleStoped;
begin
   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;
end;

procedure PlayerOffline(PlayerName: String);
begin
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
if (PlayerName = 'ชื่อลูกตี้') then Reconnect(5);
end;

begin
   Init;
end.



ตรงนี้ผมจะแก้เอาสลับตราออกไงคับขอวิธีแก้หน่อยเพราะเวลาเปิดแล้วมันตัดออกเรื่อยๆเลยอะคับ

แล้วก็ถ้าต้องการจะเซ็ตให้ตี npc ที่อยู่ตำแหน่งเป็น row , col เซ็ตตรงไหนอะคับ ขอบคุณล่วงหน้าคับ




1 สมาชิกกำลังอ่านกระทู้นี้

0 สมาชิก, 1 ผู้เยี่ยมชม, 0 ผู้ใช้งานที่ซ่อนตัว