23.11.2016, 08:01
ERROR CODE:
DUEL SYSTEM:
Код:
C:\Users\ADMİN\Desktop\IVIR ZIVIR\TEMİZ SW\pawno\include\sscanf2.inc(258) : warning 202: number of arguments does not match definition C:\Users\ADMİN\Desktop\IVIR ZIVIR\TEMİZ SW\pawno\include\sscanf2.inc(271) : error 025: function heading differs from prototype Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 1 Error.
Код:
#include <a_samp> #include <zcmd> #include <sscanf2> #include <fixes2> #define SCM SendClientMessage #define dueldialog 242 #define DuelPlace1 3577.6873,1696.7938,278.7320 //Change this to ur duel location #define DuelPlace2 3577.6873,1789.9469,278.7320 //Change this to ur duel location new DuelType, Bet, InDuel[MAX_PLAYERS], declinedueltimer, dueler1, dueler2, Progress, DUEL_TIMER, DuelAllowed[MAX_PLAYERS]; new CD, CDTimer; public OnFilterScriptInit() { dueler2 = 0; dueler1 = 0; Progress = 0; DuelType = 0; Bet = 0; CreateObject(13657, 3541.7075,1721.0681,280.9664, 0.0000000,0.0000000,0.0000000, 1000); //This is the current duel place return 1; } public OnPlayerConnect(playerid) { InDuel[playerid] = 0; DuelAllowed[playerid] = 1; return 1; } public OnPlayerDisconnect(playerid) { if(Progress == 2) { new msg[128]; format(msg, sizeof(msg), "{ff0000} %s(%d) & %s(%d) Duellosu Sona Erdi. Sebep: Zaman Asimi!", GetName(dueler1), dueler1, GetName(dueler2), dueler2); SendClientMessageToAll(-1, msg); Progress =0; } return 1; } stock GiveDuelWeapons(Type) { if(Type == 0) { GivePlayerWeapon(dueler1, 26, 15000); GivePlayerWeapon(dueler2, 26, 15000); } if(Type == 1) { GivePlayerWeapon(dueler1, 24, 15000); GivePlayerWeapon(dueler2, 24, 15000); } if(Type == 2) { GivePlayerWeapon(dueler1, 32, 15000); GivePlayerWeapon(dueler2, 32, 15000); } if(Type == 3) { GivePlayerWeapon(dueler1, 31, 15000); GivePlayerWeapon(dueler2, 31, 15000); } if(Type == 4) { GivePlayerWeapon(dueler1, 30, 15000); GivePlayerWeapon(dueler2, 30, 15000); } if(Type == 5) { GivePlayerWeapon(dueler1, 22, 15000); GivePlayerWeapon(dueler2, 22, 15000); } if(Type == 6) { GivePlayerWeapon(dueler1, 32, 15000); GivePlayerWeapon(dueler1, 26, 15000); GivePlayerWeapon(dueler1, 24, 15000); GivePlayerWeapon(dueler2, 32, 15000); GivePlayerWeapon(dueler2, 26, 15000); GivePlayerWeapon(dueler2, 24, 15000); } if(Type == 7) { GivePlayerWeapon(dueler1, 31, 15000); GivePlayerWeapon(dueler1, 24, 15000); GivePlayerWeapon(dueler2, 24, 15000); GivePlayerWeapon(dueler2, 31, 15000); } if(Type == 8) { GivePlayerWeapon(dueler1, 34, 15000); GivePlayerWeapon(dueler1, 31, 15000); GivePlayerWeapon(dueler2, 31, 15000); GivePlayerWeapon(dueler2, 34, 15000); } return 1; } stock GetName(playerid) { new Name[24]; GetPlayerName(playerid, Name, sizeof(Name)); return Name; } CMD:duel(playerid, params[]) { new target, duelbet; if(sscanf(params, "ui", target, duelbet)) return SendClientMessage(playerid, -1,"{ff0000}HATA: {ffffff}Kullanım: /duello [PlayerID] [Bahis]"); if(DuelAllowed[target] == 0) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Oyuncunun Duello Davetleri Kapali!"); if(Progress == 2) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Duellosu Devam Ediyor!"); if(Progress == 1) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Baska Bir Oyuncuyla Duelloda!"); if(!IsPlayerConnected(target)) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Oyuncu Oyunda Degil!"); if(GetPlayerMoney(playerid) < duelbet && duelbet != 0) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Okadar Paran Cıkmaz."); if(GetPlayerMoney(target) < duelbet && duelbet != 0) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}O Oyuncunun O Kadar Parası Yok!"); if(duelbet < 0) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Max Bahis: $0-250000"); if(duelbet > 250000) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Max Bahis: $0-250000"); if(target == playerid) return SCM(playerid, -1, "{ff0000}HATA: {ffffff}Kendi Kendine Duello Yapamazsin.!"); dueler2 = target; dueler1 = playerid; Bet = duelbet; Progress = 1; ShowPlayerDialog(playerid, dueldialog + 1, DIALOG_STYLE_LIST, "{00ff2a}Duel Weapons:", "{0affea}Sawn-off Shotgun\n{0affea}Desert Eagle\n{0affea}TEC-9\n{0affea}M4\n{0affea}Ak47\n{0affea}Colt-45 / 9mm\n{0affea}Sawn-off Shotgun + TEC-9 + Deagle\n{0affea}M4 + Deagle\n{0affea}Sniper + M4", "Choose", "Cancel"); return 1; } CMD:toggleduels(playerid, params[]) { if(DuelAllowed[playerid] == 0) { SCM(playerid, -1, "{00ff2a}You've allowed duel invitations"); DuelAllowed[playerid] = 1; } else { SCM(playerid, -1, "{FF0000}You've DisAllowed duel invitations"); DuelAllowed[playerid] = 0; } return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { switch(dialogid) { case dueldialog +1: { if(!response) return Progress = 0; DuelType = listitem; DuelOffered(); } case dueldialog +2: { if(!response) return DuelDeclined(); SetPlayerPos(dueler1, DuelPlace1); SetPlayerFacingAngle(dueler1, 4.5954); SetCameraBehindPlayer(dueler1); SetPlayerPos(dueler2, DuelPlace2); SetPlayerFacingAngle(dueler2, 188.0179); SetCameraBehindPlayer(dueler2); SetPlayerHealth(dueler2, 100); SetPlayerHealth(dueler1, 100); SetPlayerArmour(dueler2, 100); SetPlayerArmour(dueler1, 100); GivePlayerMoney(dueler1, -Bet); GivePlayerMoney(dueler2, -Bet); Progress = 2; SetPlayerVirtualWorld(dueler1, 2); SetPlayerVirtualWorld(dueler2, 2); new string[128]; format(string, sizeof(string), "{ff0000}[DUEL] The Duel Between %s(%d) and %s(%d) Has Started. (Bet: %d)", GetName(dueler1), dueler1, GetName(dueler2), dueler2, Bet); SendClientMessageToAll(-1, string); TogglePlayerControllable(dueler1, false); TogglePlayerControllable(dueler2, false); InDuel[dueler1] = 1; InDuel[dueler2] = 1; GiveDuelWeapons(DuelType); CD = 6; CDTimer = SetTimer("CountDown", 1000, 1); KillTimer(declinedueltimer); DUEL_TIMER = SetTimer("TIMEUP", 60000*3, 0); } } return 0; } public OnPlayerDeath(playerid, killerid) { if(InDuel[playerid] == 1 && InDuel[killerid] == 1) { GivePlayerMoney(killerid, 2*Bet); new Float:Health, Float:Armour, string[128]; GetPlayerArmour(killerid, Armour); GetPlayerHealth(killerid, Health); format(string, sizeof(string), "{ff0000}[DUEL] %s(%d) Has Won The Duel From %s(%d) And Still Has %.2f Health and %.2f Armour Left", GetName(killerid), killerid, GetName(playerid), playerid, Health, Armour); SendClientMessageToAll(-1, string); SpawnPlayer(killerid); new str[128]; format(str, sizeof(str), "{ff0000}[DUEL]: You've Won The Duel Against %s(%d) And Won $%d", GetName(playerid), playerid, Bet); SCM(killerid, -1, str); Progress = 0; InDuel[playerid] = 0; InDuel[killerid] = 0; KillTimer(DUEL_TIMER); } return 1; } forward DuelOffered(); public DuelOffered() { new string[128], str[256]; if(dueler2 > -10) { if(DuelType == 0) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}Sawn-off Shotgun\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 1) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}Desert Eagle\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 2) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}TEC-9\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 3) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}M4\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 4) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}Ak47\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 5) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}Colt 45\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 6) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}Sawn-off Shotgun + TEC-9 + Deagle\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 7) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}M4 + Deagle\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); if(DuelType == 8) format(str, sizeof(str), "{ff0000}You Have Been Challenged To A 1v1 Duel By {00ff37}%s!\n{ff0000}This Invite Will Be Auto Cancelled In 10 Seconds.\n{ff0000}Duel Weapons: {00ff37}Sniper + M4\n{ff0000}Bet: {00ff37}$%d", GetName(dueler1), Bet); } format(string, sizeof(string), "{ff0000}You Have Challenged %s(%d) To A 1v1 Duel!", GetName(dueler2), dueler2); ShowPlayerDialog(dueler2, dueldialog + 2, DIALOG_STYLE_MSGBOX, "{ff0000}DUEL CHALLENGE", str, "Accept", "Decline"); SCM(dueler1, -1, string); declinedueltimer = SetTimer("DuelDeclined", 10000, 0); return 1; } forward DuelDeclined(); public DuelDeclined() { new string[128]; format(string, sizeof(string), "{ff0000}%s(%d) Have Declined Your Duel Challenge", GetName(dueler2), dueler2); SCM(dueler1, -1, string); SCM(dueler2, -1, "{ff0000}You Have Declined The Duel Challenge"); Progress = 0; KillTimer(declinedueltimer); ShowPlayerDialog(dueler2, -1, DIALOG_STYLE_MSGBOX, "Okay", "Enough madafkka", "", ""); return 1; } forward TIMEUP(); public TIMEUP() { new msg[128]; format(msg, sizeof(msg), "{ff0000}Duel Between %s(%d) and %s(%d) Has Ended. Reason: Time UP!", GetName(dueler1), dueler1, GetName(dueler2), dueler2); SendClientMessageToAll(-1, msg); Progress =0; SpawnPlayer(dueler1); SpawnPlayer(dueler2); ResetPlayerWeapons(dueler1); ResetPlayerWeapons(dueler2); return 1; } forward CountDown(); public CountDown() { CD --; if(CD == 0) { GameTextForPlayer(dueler1, "~r~GO! GO! GO!", 2000, 3); GameTextForPlayer(dueler2, "~r~GO! GO! GO!", 2000, 3); KillTimer(CDTimer); TogglePlayerControllable(dueler1, true); TogglePlayerControllable(dueler2, true); PlayerPlaySound(dueler1, 1057, DuelPlace1); PlayerPlaySound(dueler2, 1057, DuelPlace2); return 1; } new msg[30]; format(msg, sizeof(msg), "~r~%d", CD); GameTextForPlayer(dueler1, msg, 1000, 3); GameTextForPlayer(dueler2, msg, 1000, 3); PlayerPlaySound(dueler1, 1056, DuelPlace1); PlayerPlaySound(dueler2, 1056, DuelPlace2); return 1; }