- เครดิต
- 32
- ความรู้
-
- เงิน $
-
- ความดี
-
|
แก้ไขครั้งสุดท้ายโดย Newza55 เมื่อ 2016-11-29 17:54
ประมาณนี้มั้งอันนี้ยกตัวอย่างนะ
new Mayakon[MAX_PLAYERS]; *ชื่อตัวแปรสำหรับเก็บว่าเราเปลี่ยนชุดอยู่หรือไม่
- if(strcmp(cmd, "/เปลี่ยนชุด", true) == 0)
- {
- if (Mayakon[playerid] <= 0)
- {
- SetPlayerAttachedObject(playerid, 0, ObjectID, Bone, x, y, z, x, y, z, x, y, z); * ตัวนี้จะเป็นพวก Object ติดตัวไปหาพิกัดที่จะให้ติดตัวมาใส่เองศึกษาได้ที่
- ( https://wiki.sa-mp.com/wiki/SetPlayerAttachedObject )
- SendClientMessage(playerid, COLOR_WHITE, "คุณได้แปลงร่างแล้วค่ะ");
- Mayakon[playerid] = 1; * เซตให้ตัวแปรนี้เป็นเลข 1 เพื่อเวลาใช้คำสั่งนี้อีกครั้งมันจะไม่มาทำงานเงื่อนไขนี้
- }
- if (Mayakon[playerid] >= 1)
- {
- RemovePlayerAttachedObject(playerid, 0) * 0 อันนี้คือเลขที่ได้มาจาก SetPlayerAttachedObject(playerid, 0) 0 หมายถึง Slot ที่เราสร้างออฟเจคไว้สามารถ เปลี่ยนเลขได้
- SendClientMessage(playerid, COLOR_WHITE, "คุณถอดชุดมายากลออกแล้วค่ะ");
- Mayakon[playerid] = 0; * เซตให้ตัวแปรนี้เป็นเลข 0เพื่อเวลาใช้คำสั่งนี้อีกครั้งมันจะไม่มาทำงานเงื่อนไขนี้แต่จะไปเงื่อนไขด้านบน
- }
- return 1;
- }
คัดลอกไปที่คลิปบอร์ด
ตัวอย่างสกิลจากที่เราใช้ชุด ผมจะไล่ตั้งแต่ตัวแปรเวลาเลยนะ
- public OnGameModeInit()
- {
- SetTimer("MayakonTime ", 1000, true); * MayakonTime คือชื่อตัวแปร * 1000 คือ 1 วินาที
- }
- ในส่วนนี้จะไว้ล่างสุดของสคริปก็ได้
- new Deley[MAX_PLAYERS];
- forward MayakonTime();
- public MayakonTime()
- {
- new Float:health;
- if (Mayakon[playerid] == 1) * สำหรับบอกว่าถ้าคนที่ใส่ชุดมายากลยุตัวแปร Mayakon จะเป็น 1 ถ้าคนที่ไม่ได้ใช้จะเป็นเลข 0 และไม่เข้าเงื่อนไขนี้
- {
- if (GetPlayerHealth(playerid, health) < 30 && Deley[playerid] <= 0)
- {
- SetPlayerHealth(playerid, health + 60.0); * บวกเลือด 60 เมื่อเลือดน้อยกว่า 30
- Deley[playerid] = 10; * ดีเลย์ 10 วินาที
- }
- }
- if (Deley[playerid] > 0)
- {
- Deley[playerid] --;
- }
- return 1;
- }
คัดลอกไปที่คลิปบอร์ด |
|