Kết quả 191 đến 200 của 338
-
25-02-12, 05:38 PM #191
- Ngày tham gia
- Feb 2011
- Đang ở
- Je suis là où l'esprit est libre...
- Bài viết
- 64
- Thanks
- 27
- Thanked 14 Times in 8 Posts
Npc đổi kiểu tóc và khuôn mặt
Hôm nay ngẫu hứng share cho mọi ng` cái code NPC đổi tóc và đổi khuôn mặt luôn
Code:/********************************************************* NPC Đổi Tóc Và Khuôn Mặt Made by YeuChienQuoc File gốc:npcdoitoc.c Nguồn:trungviet *********************************************************/ #include <npc.h> #include <ansi.h> inherit OFFICER; // 函数:获取人物造型 int get_char_picid() { return 9964; } void do_welcome( string arg ); void do_change(string arg); void do_hairchange(string arg); void do_facechange(string arg); // 函数:构造处理 void create() { set_name( "Diện Mạo Tiên Nhân" ); set_2( "talk", ([ "welcome" : (: do_welcome :), "change" : (: do_change :), "hairchange" : (: do_hairchange :), "facechange" : (: do_facechange :), ])); setup(); } void do_look( object who ) { int id = getoid( this_object() ); send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nTa có thể giúp ngươi thay đổi được kiểu tóc và khuôn mặt của mình.Thế nào?Ngươi có muốn thay đổi không?Chi phí cho mỗi lần thay đổi khuôn mặt hay kiểu tóc là 50.000 lượng.\n" ESC"Tôi muốn thay đổi kiểu tóc\ntalk %x# welcome.1\n" ESC"Tôi muốn thay đổi khuôn mặt\ntalk %x# welcome.2\n" ESC"Rời khỏi",get_name(),id,id)); } void do_welcome( string arg ) { object me = this_object(); __FILE__ ->do_welcome2(me, arg); } void do_welcome2( object me, string arg ) { int flag,id,gender; object who; who = this_player(); id = getoid(me); flag = to_int(arg); who->set_time( "talk", 0); switch(flag) { case 1: { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nNgươi chắc chắn là ngươi muốn thay đổi kiểu tóc chứ?\n" ESC"Tôi muốn thay đổi kiểu tóc\ntalk %x# change.1\n" ESC"Rời khỏi",get_name(),id)); break; } case 2: { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nNgươi chắc chắn là ngươi muốn thay đổi khuôn mặt chứ?\n" ESC"Tôi muốn thay đổi khuôn mặt\ntalk %x# change.2\n" ESC"Rời khỏi",get_name(),id)); break; } } } void do_change( string arg ) { object me = this_object(); __FILE__ ->do_change2(me, arg); } void do_change2( object me, string arg ) { int flag,id,gender; object who; who = this_player(); id = getoid(me); flag = to_int(arg); who->set_time( "talk", 0); switch(flag) { case 1: { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nHãy chọn một kiểu tóc mà ngươi thích.\n" ESC"Tóc kiểu 1 (Tóc cơ bản)\ntalk %x# hairchange.1\n" ESC"Tóc kiểu 2 (Tóc môn phái Đào Hoa Nguyên)\ntalk %x# hairchange.2\n" ESC"Tóc kiểu 3 (Tóc môn phái Thục Sơn)\ntalk %x# hairchange.3\n" ESC"Tóc kiểu 4 (Tóc môn phái Cấm Vệ Quân)\ntalk %x# hairchange.4\n" ESC"Tóc kiểu 5 (Tóc môn phái Đường Môn)\ntalk %x# hairchange.5\n" ESC"Tóc kiểu 6 (Tóc môn phái Côn Luân)\ntalk %x# hairchange.6\n" ESC"Tóc kiểu 7 (Tóc môn phái Vân Mộng Cốc)\ntalk %x# hairchange.7\n" ESC"Tóc kiểu 8 (Tóc môn phái Mao Sơn)\ntalk %x# hairchange.8\n" ESC"Thoát",get_name(),id,id,id,id,id,id,id,id)); break; } case 2: { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nHãy chọn một kiểu khuôn mặt mà ngươi thích.\n" ESC"Mặt kiểu 1 \ntalk %x# facechange.1\n" ESC"Mặt kiểu 2 \ntalk %x# facechange.2\n" ESC"Mặt kiểu 3 \ntalk %x# facechange.3\n" ESC"Mặt kiểu 4 \ntalk %x# facechange.4\n" ESC"Mặt kiểu 5 \ntalk %x# facechange.5\n" ESC"Mặt kiểu 6 (Chưa hoàn chỉnh)\ntalk %x# facechange.6\n" ESC"Thoát",get_name(),id,id,id,id,id,id)); break; } } } void do_hairchange( string arg ) { object me = this_object(); __FILE__ ->do_hairchange2(me, arg); } void do_hairchange2( object me, string arg ) { int flag,id,gender; object who; who = this_player(); id = getoid(me); flag = to_int(arg); who->set_time( "talk", 0); switch(flag) { case 1: case 2: case 3: case 4: case 5: case 6: case 7: case 8: if (who->get_cash() < 50000) // Nếu tiền trong người đối tượng who ít hơn 50000 Ngân lượng { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Số ngân lượng hiện có của bạn không đủ 50 000 lượng!" ESC"Rời khỏi",get_name())); return; } if (who->get_gender() == 2) gender = 1000; who->add_cash(-50000);//trừ 50000 lượng của who who->set_hair(gender+flag);//thay đổi tóc theo case và giới tính(gender) who->add_to_scene(get_z(who), get_x(who), get_y(who), get_d(who));//load lại nhân vật send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nHãy thưởng thức diện mạo mới của ngươi đi nhé!\n" ESC"Đóng lại",get_name())); break; } } void do_facechange( string arg ) { object me = this_object(); __FILE__ ->do_facechange2(me, arg); } void do_facechange2( object me, string arg ) { int flag,id,gender; object who; who = this_player(); id = getoid(me); flag = to_int(arg); who->set_time( "talk", 0); switch(flag) { case 1: case 2: case 3: case 4: case 5: case 6: if (who->get_cash() < 50000) // Nếu tiền trong người đối tượng who ít hơn 50000 Ngân lượng { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Số ngân lượng hiện có của bạn không đủ 50 000 lượng!" ESC"Rời khỏi",get_name())); return; } if (who->get_gender() == 2) gender = 1000; who->add_cash(-50000);// trừ 50000 lượng của who who->set_photo(gender+flag);//thay đổi khuôn mặt who->add_to_scene(get_z(who), get_x(who), get_y(who), get_d(who));//load lại nhân vật send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\nHãy thưởng thức diện mạo mới của ngươi đi nhé!!!\n" ESC"Đóng lại",get_name())); break; } }
P/s:Có mem nào giỏi C fix cái mặt số 6 của nam và nữ trong thay đổi khuôn mặt đi với lại fix dùm lỗi nữ xài côn hay thương lúc đang mặc áo cưới thì bị lệch tóc(Tự test) với lại nam xài côn mặc áo cưới truyền thống cũng bị lệch tóc luôn...Là sao???Lần sửa cuối bởi YeuChienQuoc, ngày 25-02-12 lúc 05:45 PM.
Khách viếng thăm hãy cùng YeuChienQuoc xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
The Following 2 Users Say Thank You to YeuChienQuoc For This Useful Post:
dat233 (25-02-12), HoangNam12345 (25-02-12)
-
25-02-12, 05:42 PM #192
Ðề: Npc đổi kiểu tóc và khuôn mặt
Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
25-02-12, 05:52 PM #193
- Ngày tham gia
- Feb 2011
- Đang ở
- Je suis là où l'esprit est libre...
- Bài viết
- 64
- Thanks
- 27
- Thanked 14 Times in 8 Posts
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Mới đầu test thành công cái npc đó lên tới 15 KB,xong rồi xóa đi + fix lại còn 7 KB mệt khiếp
Khách viếng thăm hãy cùng YeuChienQuoc xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
25-02-12, 05:58 PM #194
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Mình thấy code của bạn khá dài và nặng, vì vậy mình mạn phép tối ưu hóa lại cho bạn thành code cực gọn, chỉ dùng 1 void welcome thay vì 4 void như code của bạn .
Code:/******************************* NPC Đổi Tóc Và Khuôn Mặt Made by YeuChienQuoc File gốc: npcdoitoc.c Nguồn: trungviet Tối ưu hóa by trungviet *******************************/ #include <npc.h> #include <ansi.h> inherit OFFICER; // 函数:获取人物造型 int get_char_picid() { return 9964; } void do_welcome( string 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 Ta có thể giúp ngươi thay đổi được kiểu tóc và khuôn mặt của mình. Thế nào? Ngươi có muốn thay đổi không? Chi phí cho mỗi lần thay đổi khuôn mặt hay kiểu tóc là 50.000 lượng.\n" ESC"Tôi muốn thay đổi kiểu tóc\ntalk %x# welcome.1\n" ESC"Tôi muốn thay đổi khuôn mặt\ntalk %x# welcome.2\n" ESC"Rời khỏi",get_name(),id,id)); } void do_welcome( string arg ) { object me = this_object(); __FILE__ ->do_welcome2(me, arg); } void do_welcome2( object me, string arg ) { int flag,id,gender; object who; who = this_player(); id = getoid(me); flag = to_int(arg); who->set_time( "talk", 0); switch(flag) { case 1: send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Ngươi chắc chắn là ngươi muốn thay đổi kiểu tóc chứ?\n" ESC"Tôi muốn thay đổi kiểu tóc\ntalk %x# welcome.11\n" ESC"Rời khỏi",get_name(),id)); break; case 2: send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Ngươi chắc chắn là ngươi muốn thay đổi khuôn mặt chứ?\n" ESC"Tôi muốn thay đổi khuôn mặt\ntalk %x# welcome.12\n" ESC"Rời khỏi",get_name(),id)); break; case 11: send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Hãy chọn một kiểu tóc mà ngươi thích.\n" ESC"Tóc kiểu 1 (Tóc cơ bản)\ntalk %x# welcome.21\n" ESC"Tóc kiểu 2 (Tóc môn phái Đào Hoa Nguyên)\ntalk %x# welcome.22\n" ESC"Tóc kiểu 3 (Tóc môn phái Thục Sơn)\ntalk %x# welcome.23\n" ESC"Tóc kiểu 4 (Tóc môn phái Cấm Vệ Quân)\ntalk %x# welcome.24\n" ESC"Tóc kiểu 5 (Tóc môn phái Đường Môn)\ntalk %x# welcome.25\n" ESC"Tóc kiểu 6 (Tóc môn phái Côn Luân)\ntalk %x# welcome.26\n" ESC"Tóc kiểu 7 (Tóc môn phái Vân Mộng Cốc)\ntalk %x# welcome.27\n" ESC"Tóc kiểu 8 (Tóc môn phái Mao Sơn)\ntalk %x# welcome.28\n" ESC"Thoát",get_name(),id,id,id,id,id,id,id,id)); break; case 12: send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Hãy chọn một kiểu khuôn mặt mà ngươi thích.\n" ESC"Mặt kiểu 1 \ntalk %x# welcome.31\n" ESC"Mặt kiểu 2 \ntalk %x# welcome.32\n" ESC"Mặt kiểu 3 \ntalk %x# welcome.33\n" ESC"Mặt kiểu 4 \ntalk %x# welcome.34\n" ESC"Mặt kiểu 5 \ntalk %x# welcome.35\n" ESC"Thoát",get_name(),id,id,id,id,id)); break; case 21: case 22: case 23: case 24: case 25: case 26: case 27: case 28: if (who->get_cash() < 50000) // Nếu tiền trong người đối tượng who ít hơn 50000 Ngân lượng { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Số ngân lượng hiện có của bạn không đủ 50.000 lượng!\n" ESC"Rời khỏi",get_name())); return; } if (who->get_gender() == 2) gender = 1000; who->add_cash(-50000); //Trừ 50000 Ngân lượng của đối tượng who who->set_hair(gender+flag-20); //Thay đổi tóc theo case và giới tính (gender) who->add_to_scene(get_z(who), get_x(who), get_y(who), get_d(who)); //Load lại nhân vật send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Hãy thưởng thức diện mạo mới của ngươi đi nhé!\n" ESC"Đóng lại",get_name())); break; case 31: case 32: case 32: case 34: case 35: if (who->get_cash() < 50000) // Nếu tiền trong người đối tượng who ít hơn 50000 Ngân lượng { send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Số ngân lượng hiện có của bạn không đủ 50.000 lượng!" ESC"Rời khỏi",get_name())); return; } if (who->get_gender() == 2) gender = 1000; who->add_cash(-50000); //Trừ 50000 Ngân lượng của đối tượng who who->set_photo(gender+flag-30); //Thay đổi khuôn mặt theo case va giới tính (gender) who->add_to_scene(get_z(who), get_x(who), get_y(who), get_d(who)); //Load lại nhân vật send_user(who,"%c%c%w%s",':',3,get_char_picid(),sprintf(" %s :\n Hãy thưởng thức diện mạo mới của ngươi đi nhé!!!\n" ESC"Đóng lại",get_name())); break; } }
Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
The Following 4 Users Say Thank You to trungviet For This Useful Post:
dat233 (25-02-12), HoangNam12345 (25-02-12), nhokpretkool (18-06-12), YeuChienQuoc (07-10-14)
-
25-02-12, 06:12 PM #195
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Việt ơi có thể cho mình hỏi là có thể đặt cho server CQ chế độ Auto Register ko?Tức là nhập tên tài khoản rồi nhập pas nó sẽ tự động đk luôn còn nếu tên đó đã tồn tại thì có thể cho hệ thống send cái câu Tài khoản đã tồn tại đc ko?Đã thử và kết quả lỗi tùm lum->Copy lại cái sys
Khách viếng thăm hãy cùng HoangNam12345 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
25-02-12, 06:16 PM #196
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
-
25-02-12, 06:21 PM #197
- Ngày tham gia
- Jul 2011
- Đang ở
- Hà Nội
- Bài viết
- 260
- Thanks
- 352
- Thanked 222 Times in 69 Posts
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Khách viếng thăm hãy cùng dat233 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
25-02-12, 06:24 PM #198
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Tuy nhiên mình vẫn sẽ gợi ý 1 chút về cách thức kiểm tra tài khoản.
Code:int check_legal_user( object me, string id, string passwd ) { mapping UserData = (["vn_god1":"123456",]); //vn_god1 là tên tài khoản đã đăng ký, 123456 là mật khẩu của tài khoản vn_god1 if( !UserData[id] ) { send_user( me, "%c%s", '!', "Tài khoản này không tồn tại!" ); send_user(me, "%c%c", 0xff, 0x11); return 0; } if( passwd != UserData[id] ) { send_user( me, "%c%s", '!', "Mật khẩu không đúng!" ); send_user(me, "%c%c", 0xff, 0x11); return 0; } }
Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
-
25-02-12, 06:48 PM #199
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
cái này là add vô hay chỉnh ở file nào vậy?
Khách viếng thăm hãy cùng HoangNam12345 xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
-
25-02-12, 06:54 PM #200
Ðề: [Hỏi Đáp] Tất cả thắc mắc về server CQ post tại đây
Khách viếng thăm hãy cùng trungviet xây dựng diễn đàn CLBGAMESVN vững mạnh nhé!
Các Chủ đề tương tự
-
Server không hiện lệnh khi post và lệnh của admin
Bởi eva0001 trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 3Bài viết cuối: 29-08-11, 09:03 PM -
Chỉnh kênh post cho tất cả các server đọc được
Bởi huandz1102 trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 17Bài viết cuối: 28-05-11, 04:25 PM -
Hỏi về Server ENC 2.0.4.0 của LHB_LOVE post
Bởi soulmather trong diễn đàn Hỏi Đáp/ Yêu CầuTrả lời: 5Bài viết cuối: 03-12-10, 05:21 AM -
Server Cubin (Post lại) !
Bởi thaihoa91 trong diễn đàn Guides - Kho Lưu trữTrả lời: 37Bài viết cuối: 12-08-10, 11:49 PM