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


MummyX

เป็นสมาชิกตั้งแต่ 10 Aug 2007
ออฟไลน์ ใช้งานล่าสุด Feb 14 2016 09:28 PM
-----

โพสต์ที่ฉันโพสต์

ในกระทู้: ขอตัวอย่างสคริปโดดเควสง่ายๆซักตัวอย่างครับ

12 August 2007 - 03:50:23 AM

Ok พอจะทำได้แล้วครับ แต่มันโดดได้ครั้งเดียวหรอครับ มีวิธีแบบไม่ต้อง Reconnect มั้ยครับ ใช้ฟังก์ชั่นอะไรใส่ตรงไหนหรือครับ ช่วยทีนะครับ

ในกระทู้: ขอตัวอย่างสคริปโดดเควสง่ายๆซักตัวอย่างครับ

12 August 2007 - 03:11:44 AM

(onitama @ Aug 11 2007, 08:58 PM) ดูโพสต์

ถ้าในเควสต้องตอบคำถาม ให้เพิ่ม procedure นี้เข้าไปครับ

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


โดย SendDialogEnd; จะต้องใส่ตาม ต่อหลัง SelectDialogChoice(1); เสมอ

เลข 1 ในวงเล็บก็คือ คำตอบที่เราเลือกนะครับ
ถ้าเควสตอบ 2 ก็ใส่ 2 ไปแทน



นี่ละครับที่ต้องการ ขอบคุณมากๆครับ laugh.gif

ในกระทู้: ขอตัวอย่างสคริปโดดเควสง่ายๆซักตัวอย่างครับ

10 August 2007 - 02:20:16 PM

(KoRnRoom99 @ Aug 10 2007, 08:24 AM) ดูโพสต์

ตัวอย่างเควสขงเบ้งคร้าบ กรณีเป็นปาร์ตี้นะคร้าบ
ถ้าคนเดียวให้เอา ClickNpc(13) ใน PartyReady ไปใส่ใน Logon แทนคร้าบ

var
    isClick: Boolean;
    isLag: Word;
procedure Logon;
begin
    isClick := False;
end;

procedure PartyReady;
begin
    ClickNpc(13);
end;

procedure OnTimer;
begin
    if isClick then
    begin
        SendCancelQuest;
        AutoEat;
        ClickNpc(13);
        isClick := False;
        isLag := 0;
    end;
    Inc(isLag);
    if (isLag mod 60= 0) then Reconnect(5);
end;

procedure NpcDialog(DialogId: Integer);
begin
    if (DialogId = 19737) then SendDialogEnd;
    if (DialogId = 19738) then SendDialogEnd;
    if (DialogId = 10150) then
    begin
        isClick := MyParty.isReady;
    end;
end;



ไอ้ตรง
procedure NpcDialog(DialogId: Integer);
begin
if (DialogId = 19737) then SendDialogEnd;
if (DialogId = 19738) then SendDialogEnd;
if (DialogId = 10150) then
begin
isClick := MyParty.isReady;
end;

ถ้าหากว่าในเควสเป็นคำถามให้เราเลือกตอบอ่ะครรับ เช่นเราต้องตอบข้อ 1 รูปแบบฟังก์ชั่นมันจะเป็นยังไงหรอครับ
procedure NpcDialogMenu(DialogId: Integer);
begin
if(DialogId=xxxxxx)then ตอบข้อ1 ;
เป็นอย่างไรต่อไป;
end;
คือไม่ค่อยเข้าใจตรงช่วงนี้อ่ะครับ