Script mẫu cho các bạn tập phát triển Server Chiến Quốc
Hello & Welcome to our community. Is this your first visit? Đăng Ký
Follow us on
Follow us on Facebook Follow us on Twitter Linked In Flickr Watch us on YouTube My Space Blogger
 
Kết quả 1 đến 3 của 3
  1. #1
    Moderator
    Ngày tham gia
    Aug 2011
    Bài viết
    313
    Thanks
    2
    Thanked 725 Times in 151 Posts

    Script mẫu cho các bạn tập phát triển Server Chiến Quốc

    ( * ) Tool dùng trong bài: [Only registered and activated users can see links. ]

    ( * ) Để có thể viết được tiếng Việt có dấu trong các file script, tại thanh công cụ, chọn File -> Encoding -> UTF-8 with BOM.

    I/ Tạo câu lệnh viết chữ thông báo chạy trên màn hình

    PHP Code:
    #include <ansi.h>
    int main(object mestring arg) {
        if (!
    is_god(me)) { // Nếu người gõ lệnh không phải là GOD (GM có quyền hạn cao nhất, kiểu như Administrator)
            
    return 1//Kết thúc
        
    }
        if (!
    arg) { //Nếu biến arg (nội dung thông báo) trống
            
    notify"Nội dung thông báo phải có ít nhất 1 ký tự" );
            return 
    1//Kết thúc
        
    }
        
    send_user(CHAT_D->get_chat(), "%c%s"0xA3HIY+arg); // Thực thi gửi thông báo chữ màu vàng (HIY) với nội dung của biến arg
        
    return 1//Kết thúc

    Rồi lưu tại với cấu trúc tên là [Tên lệnh].c. Ví dụ mình lưu với tên là: syschat.c. Để vào thư mục cmd/base hoặc cmd/std trong current (Thư mục Server Chiến Quốc). Nếu đang chạy GSE thì tắt GSE và bật lại, vào trò chơi, gõ như sau: /syschat Hello word!.

    II/ Tạo câu lệnh sửa thuộc tính nhân vật

    PHP Code:
    int main(object mestring arg) {
        
    int conspistrcpsdex//Tạo các biến int
        
    if (!arg || sscanf(arg"%d %d %d %d %d"conspistrcpsdex) != 5) return 1//Kiểm tra và scan giá trị, nếu không có giá trị nào hoặc không đủ 5 giá trị cần thì sẽ kết thúc, nếu đủ thì sẽ sử dụng 5 giá trị đó để làm giá trị yêu cầu thuộc tính mới
        
    me->set_con_2(con); //Sửa thuộc tính Thể Chất
        
    me->set_spi_2(spi); //Sửa thuộc tính Tinh Thần
        
    me->set_str_2(str); //Sửa thuộc tính Cường Lực
        
    me->set_cps_2(cps); //Sửa thuộc tính Nại Lực
        
    me->set_dex_2(dex); //Sửa thuộc tính Mẫn Tiệp
        
    USER_ENERGY_D->count_all_prop(me); //Tính lại chỉ số nhân vật sau khi sửa thuộc tính
        
    return 1//Kết thúc

    Xong lưu tại với cấu trúc tên là [Tên lệnh].c. Ví dụ: setstats.c. Để vào thư mục cmd/base hoặc cmd/std trong current (Thư mục Server Chiến Quốc). Nếu đang chạy GSE thì tắt GSE và bật lại, vào trò chơi, gõ như sau: /setstats 1000 1000 1000 1000 1000.

    III/ Cách tạo NPC đổi kiểu tóc đơn giản

    PHP Code:
    /************************
        NPC Đổi Tóc
        Code by trungviet
    ************************/

    #include <npc.h>
    #include <ansi.h>
    inherit OFFICER;
    int get_char_picid() { return 9958; }
    void do_welcomestring arg );
    void create() {
        
    set_name("Diện Mạo Tiên Nhân");
        
    set_2"talk", ([
                    
    "welcome"          : (: do_welcome :),
        ]));
        
    setup();
    }

    void do_look(object who) {
        
    int id getoid(this_object());
        
    send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Bạn chán kiểu tóc hiện tại của mình rồi à, đừng lo, hãy gặp tôi, tôi có thể cắt cho bạn bất kỳ kiểu tóc nào mà bạn muốn chỉ với 100.000 lượng.\n"
            
    ESC"Tóc kiểu 1 (Tóc cơ bản)\ntalk %x# welcome.1\n"
            
    ESC"Tóc kiểu 2 (Tóc môn phái Đào Hoa Nguyên)\ntalk %x# welcome.2\n"
            
    ESC"Tóc kiểu 3 (Tóc môn phái Thục Sơn)\ntalk %x# welcome.3\n"
            
    ESC"Tóc kiểu 4 (Tóc môn phái Cấm Vệ Quân)\ntalk %x# welcome.4\n"
            
    ESC"Tóc kiểu 5 (Tóc môn phái Đường Môn)\ntalk %x# welcome.5\n"
            
    ESC"Tóc kiểu 6 (Tóc môn phái Côn Luân)\ntalk %x# welcome.6\n"
            
    ESC"Tóc kiểu 7 (Tóc môn phái Vân Mộng Cốc)\ntalk %x# welcome.7\n"
            
    ESC"Tóc kiểu 8 (Tóc môn phái Mao Sơn)\ntalk %x# welcome.8\n"
            
    ESC"Rời khỏi",get_name(),id,id,id,id,id,id,id,id));
    }

    void do_welcome(string arg) {
            
    object me this_object();
            
    __FILE__ ->do_welcome2(mearg);
    }

    void do_welcome2(object mestring arg) {
        
    int flag,id,gender;
        
    object who;
     
            
    who this_player();
      
    id getoid(me);
            
    flag to_int(arg);
            
    who->set_time"talk",  0);
        switch(
    flag) {
            default: return; break; 
    // Mặc định, nếu không có trong danh sách sẽ bỏ qua
            
    case 1:
            case 
    2:
            case 
    3:
            case 
    4:
            case 
    5:
            case 
    6:
            case 
    7:
            case 
    8:
                if (
    who->get_cash() < 100000) { // Nếu tiền trong người đối tượng who ít hơn 100000 Ngân lượng
                    
    send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Ngươi đang gặp vấn đề về tiền bạc à? Tiêu Đầu Lão Thái Úy ở Chu Quốc có thể giúp ngươi đấy.\n"
                        
    ESC"Rời khỏi",get_name())); 
                }
                if (
    who->get_gender() == 2gender 1000;
                
    who->add_cash(-100000); // Trừ 100000 Ngân lượng của đối tượng who
                
    who->set_hair(gender+flag); // Đổi kiểu tóc của đối tượng who
                
    who->add_to_scene(get_z(who), get_x(who), get_y(who), get_d(who)); // Load lại hình ảnh, hiệu ứng và một vài thứ khác của đối tượng who
                
    send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Xong rồi đấy, cho ta xin 100.000 lượng tiền công nhé.\n"
                    
    ESC"Đóng lại",get_name()));
                break;
        }

    Xong lưu tại với cấu trúc tên là [Tên tập tin].c (VD: npcdoitoc.c). Để vào thư mục bất kỳ trong npc trong current (Thư mục Server Chiến Quốc) (VD: Mình để trong npc/test), vào trò chơi, gõ /clone [Đường dẫn đến tập tin bạn vừa tạo trong current].c (VD của tớ là /clone npc/test/npcdoitoc.c).
    P/S: Nếu bạn muốn thêm npc này vào danh sách npc khi vừa khởi động thì có thể tham khảo bên bài viết hướng dẫn của Minh Phụng ở [Only registered and activated users can see links. ].

    Các file mẫu trong bài viết:
    • [Only registered and activated users can see links. ]
    • [Only registered and activated users can see links. ]
    • [Only registered and activated users can see links. ]

    Sẽ còn cập nhật...
    Lần sửa cuối bởi trungviet, ngày 15-02-12 lúc 06:37 PM.
    Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  2. The Following 25 Users Say Thank You to trungviet For This Useful Post:

    anhduca4 (12-11-12), bapyeuheo (22-07-13), ben543518694 (05-11-12), boylanhlung14 (30-08-12), Bybaybong (01-04-12), cauchu9xth (26-02-12), daikimvuong1 (13-09-12), dat233 (14-02-12), gemini29597 (15-02-12), hachacpro (17-08-12), huytpk777 (14-08-12), huytpk951 (21-08-12), kelnight (15-02-12), khungboktvn (03-02-13), legendaryntq (15-02-12), mothaiba123 (23-08-12), nguyen_van003 (27-12-12), nhokpretkool (30-10-12), ringta1234 (14-02-12), sup3rfly (30-01-13), thanhhaiqctnhp (10-03-15), thanthoai2114 (14-11-12), thiensuvqs (24-01-18), YeuChienQuoc (15-02-12), YLENOL (12-07-12)

  3. #2
    Moderator
    Ngày tham gia
    Aug 2011
    Bài viết
    313
    Thanks
    2
    Thanked 725 Times in 151 Posts

    Ðề: Script mẫu cho các bạn tập phát triển Server Chiến Quốc

    Lệnh tạo Tinh Nguyên Đơn kỹ năng Bảo Thú theo ý muốn dựa trên ID. Lệnh này chắc cũng không mới, nhưng cứ post lại cho ai thấy cần:

    PHP Code:
    int main(object mestring arg) {
        
    int skillid to_int(arg), p;
        
    object item;
        if (
    is_player(me)) return 1;
        if (!
    "quest/pet"->get_skill_desc(skillid)) return 1;
        if (
    skillid >= 74201) {
            
    item = new("/item/44/4489");
        }
        else 
    item = new("/item/44/4488");
        if (
    item) {
            
    item->set("special"sprintf("%d"skillid));
            
    item->move2(me, -1);
            
    item->add_to_user(p);
        }
        return 
    1;


    Ví dụ lệnh mình tạo ra có tên là
    /makepetskill, vào game đánh lệnh như sau: /makepetskill 74101 (Hộ Thân Thuẫn), /makepetskill 74201 (Cao Cấp Hộ Thân Thuẫn). ID kỹ năng Bảo Thú có thể tìm được trong skill/74/ của server.
    Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

  4. The Following 7 Users Say Thank You to trungviet For This Useful Post:

    ben543518694 (07-03-13), dat233 (14-02-13), huytpk951 (14-02-13), nhochamvui_lov (09-10-16), nhokpretkool (13-02-13), quan2051993 (13-02-13), tientrungqb (14-02-13)

  5. #3
    Thành Viên
    Ngày tham gia
    Jan 2013
    Bài viết
    41
    Thanks
    5
    Thanked 3 Times in 3 Posts

    Ðề: Script mẫu cho các bạn tập phát triển Server Chiến Quốc

    ctri c+ v dc ko v ay lam roi ma cha thay j ca?
    Khách viếng thăm hãy cùng iqueen xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!

 

 

Các Chủ đề tương tự

  1. [JX] [CHIA SẺ KINH NGHIỆM] Học Script Cơ Bản Trong JX Server
    Bởi ps1990 trong diễn đàn Scripts
    Trả lời: 0
    Bài viết cuối: 13-01-13, 02:27 AM
  2. [JX] Chia Sẻ Và Cùng Nhau Phát Triển Game Engine.
    Bởi dungnguyen15 trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 4
    Bài viết cuối: 06-06-12, 01:47 PM
  3. [KT] Chỉnh lại khoảng cách thi triển chiệu
    Bởi ryoma_kenshin trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 11
    Bài viết cuối: 07-04-12, 04:04 PM
  4. [JX] Cần giúp đỡ học vài chiêu về add npc và viết script
    Bởi bboybest trong diễn đàn Hỏi Đáp/ Yêu Cầu
    Trả lời: 5
    Bài viết cuối: 07-01-12, 11:03 AM
  5. Chia sẻ ý tưởng về JX Script
    Bởi banynavy trong diễn đàn Scripts
    Trả lời: 9
    Bài viết cuối: 22-04-10, 07:21 PM

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 01:31 AM.
vBulletin®, Copyright ©2000-2011, Jelsoft Enterprises Ltd.
CLBGamesVN không chịu trách nhiệm về Luật Bản Quyền của các tài liệu, bài viết v.v...được đăng tải trên diễn đàn này.
Diễn đàn phát triển dưới sự đóng góp của tất cả thành viên. BQT chỉ là những người thành lập ra sân chơi, quản lý và duy trì về mặt kỹ thuật, nội dung khi hợp lệ.