|
Проблема с командой /setleader
|
|
| mazyakaDM |
Дата: Понедельник, 27.07.2015, 13:54 | Сообщение # 1
|
Новичок
Сообщений: 5
Статус: Offline
|
Помогите пожалуйста, вот ошибка: Код D:\mode\gamemodes\new.pwn(11881) : error 033: array must be indexed (variable "-unknown-") D:\mode\gamemodes\new.pwn(11881) : warning 204: symbol is assigned a value that is never used: "setlevel" Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error. команда: Код if(strcmp(cmd, "/setleader", true) == 0){ if(IsPlayerConnected(playerid)){ tmp = strtok(cmdtext, idx); if(!strlen(tmp)){ SCM(playerid, COLOR_GRAD2, "Используй /setleader [id игрока] [id орагнизации] [id скина]");return true;} new para1; new level; new giveplayer[MAX_PLAYER_NAME]; new giveplayerid[MAX_PLAYER_NAME]; new sendername[MAX_PLAYER_NAME]; new string[256]; para1 = ReturnUser(tmp); new setlevel = strrest(cmdtext, idx); level = strval(tmp); tmp = strtok(cmdtext, idx); if(level > 30 || level < 0) { SCM(playerid, COLOR_GRAD2, "ID организации от 1 до 30"); return true; } if(PlayerInfo[para1][pWarn] >= 1) return SendClientMessage(playerid, COLOR_GRAD1,"Этот игрок не может вступать в организации из-за наличия предупреждений"); if (PlayerInfo[playerid][pAdmin] >= 5){ if(IsPlayerConnected(para1)){ if(para1 != INVALID_PLAYER_ID){ GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); new otext[50]; if(level == 0){ SetPlayerSkin(para1, PlayerInfo[para1][pChar]); PlayerInfo[para1][pRang] = 0; PlayerInfo[para1][pMember] = 0; PlayerInfo[para1][pLeader] = 0; SCM(para1, -1, string); SetPlayerToTeamColor(para1);return true;} else if(level == 1) { otext = "Правительство"; PlayerInfo[para1][pRang] = 10; } //Adm.prez else if(level == 2) { otext = "Мэрия Лос-Сантос"; PlayerInfo[para1][pRang] = 10;} //Мэрия ЛС else if(level == 3) { otext = "Мэрия Сан-Фиерро"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 4) { otext = "Мэрия Лас-Вентурас"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 5) { otext = "Министерство Обороны"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 6) { otext = "Cухопутные войска"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 7) { otext = "Военно-Воздушные Силы"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 8) { otext = "Военно-морской флот"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 9) { otext = "Министерство-Внутренних-Дел"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 10) { otext = "Полиция Лос-Сантос"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 11) { otext = "Полиция Сан-Фиерро"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 12) { otext = "Полиция Лас-Вентурас"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 13) { otext = "Федеральное Бюро Расследований"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 14) { otext = "ТВ и Радио"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 15) { otext = "Радиоцентр Лос-Сантос"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 16) { otext = "Радиоцентр Сан-Фиерро"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 17) { otext = "Радиоцентр Лас-Вентурас"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 18) { otext = "Больница Лос-Сантос"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 19) { otext = "Grove Street"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 20) { otext = "The Ballas"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 21) { otext = "The Rifa"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 22) { otext = "Varios Los Aztecas"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 23) { otext = "Los Santos Vagos"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 24) { otext = "La Cosa Nostra"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 25) { otext = "Русская Мафия"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 26) { otext = "Yakuza"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 27) { otext = "Министерство Здравоохранения"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 28) { otext = "Больница Сан-Фиерро"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 29) { otext = "Больница Лас-Вентурас"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF else if(level == 30) { otext = "ТВ-Центр"; PlayerInfo[para1][pRang] = 10;} //FBI/ATF PlayerInfo[para1][pLeader] = level; PlayerInfo[para1][pMember] = level; format(string, sizeof(string), "Вы назначили %s руководить организацией \"%s\"", giveplayer,otext); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "%s назначил Вас лидером организации \"%s\"",sendername ,otext); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "[Внимание] %s[%i] назначил %s[%d] лидером организации \"%s\" ", sendername, playerid, giveplayer, giveplayerid, otext); SendAdminMessage(0xFF0000AA, string); SetPlayerSkin(para1, PlayerInfo[para1][pSkin]); SetPlayerToTeamColor(para1); PlayerInfo[playerid][pJob] = 0;}}}}return true;} Строка с ошибочкой Код new setlevel = strrest(cmdtext, idx); P.S. Удаляю строку - не ставит, а снимает с лидерки.
|
|
|
|
|
| Len1n |
Дата: Понедельник, 27.07.2015, 14:44 | Сообщение # 2
|
Боец
Сообщений: 89
Статус: Offline
|
Прости, не удержался, увидев эту комманду...
Ко всем define:
Ко всем new: Код new orgName[MAX_ORGS+1][64] = { "Гражданский", "Правительство", "Мэрия Лос-Сантос", "Мэрия Сан-Фиерро", "Мэрия Лас-Вентурас", "Министерство Обороны", "Cухопутные войска", "Военно-Воздушные Силы", "Военно-морской флот", "Министерство-Внутренних-Дел", "Полиция Лос-Сантос", "Полиция Сан-Фиерро", "Полиция Лас-Вентурас", "Федеральное Бюро Расследований", "ТВ и Радио", "Радиоцентр Лос-Сантос", "Радиоцентр Сан-Фиерро", "Радиоцентр Лас-Вентурас", "Больница Лос-Сантос", "Grove Street", "The Ballas", "The Rifa", "Varios Los Aztecas", "Los Santos Vagos", "La Cosa Nostra", "Русская Мафия", "Yakuza", "Министерство Здравоохранения", "Больница Сан-Фиерро", "Больница Лас-Вентурас", "ТВ-Центр" };
Код if(strcmp(cmd, "/setleader", true) == 0){ if (PlayerInfo[playerid][pAdmin]<5 || !IsPlayerConnected(playerid))return 1; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SCM(playerid, COLOR_GRAD2, "Используй /setleader [id игрока] [id орагнизации] [id скина]"); new para1 = ReturnUser(tmp); if(!IsPlayerConnected(para1) || para1 == INVALID_PLAYER_ID) return 1; new level, giveplayer[MAX_PLAYER_NAME], sendername[MAX_PLAYER_NAME]; new string[144]; tmp = strtok(cmdtext, idx); level = strval(tmp); if(level > MAX_ORGS || level < 0) return SCM(playerid, COLOR_GRAD2, "ID организации от 0 до 30"); if(level == 0){ SetPlayerSkin(para1, PlayerInfo[para1][pChar]); PlayerInfo[para1][pRang] = 0; PlayerInfo[para1][pLeader] = 0; PlayerInfo[para1][pMember] = 0; // Если нужно, вставишь сюда уведомление о увольнении SetPlayerToTeamColor(para1); return 1; } if(PlayerInfo[para1][pWarn]>0) return SendClientMessage(playerid, COLOR_GRAD1,"Этот игрок не может вступать в организации из-за наличия предупреждений"); GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[para1][pLeader] = level; PlayerInfo[para1][pMember] = level; PlayerInfo[para1][pRang] = 10; PlayerInfo[playerid][pJob] = 0; SetPlayerSkin(para1, PlayerInfo[para1][pSkin]); SetPlayerToTeamColor(para1); format(string, sizeof(string), "Вы назначили %s руководить организацией \"%s\"", giveplayer, orgName[level]); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "%s назначил Вас лидером организации \"%s\"",sendername , orgName[level]); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "[Внимание] %s[%i] назначил %s[%d] лидером организации \"%s\" ", sendername, playerid, giveplayer, para1, orgName[level]); SendAdminMessage(0xFF0000AA, string); }
Оптимизировал, привел код в более-менее нормальный вид. Исправил пару очевидных ошибок. Если привести остальные команды к такому виду, мод станет чуточку лучше)
Связь со мной: Skype: po61-rap E-Mail: [email protected]
if(time>=1500 && rep<500) { cout « "200 репы накручено!"; rep+=200; }
|
|
|
|
|
| mazyakaDM |
Дата: Вторник, 28.07.2015, 07:15 | Сообщение # 3
|
Новичок
Сообщений: 5
Статус: Offline
|
Цитата Len1n (  ) Прости, не удержался, увидев эту комманду...
Ко всем define: Код #define MAX_ORGS 30
Ко всем new: Код new orgName[MAX_ORGS+1][64] = { "Гражданский", "Правительство", "Мэрия Лос-Сантос", "Мэрия Сан-Фиерро", "Мэрия Лас-Вентурас", "Министерство Обороны", "Cухопутные войска", "Военно-Воздушные Силы", "Военно-морской флот", "Министерство-Внутренних-Дел", "Полиция Лос-Сантос", "Полиция Сан-Фиерро", "Полиция Лас-Вентурас", "Федеральное Бюро Расследований", "ТВ и Радио", "Радиоцентр Лос-Сантос", "Радиоцентр Сан-Фиерро", "Радиоцентр Лас-Вентурас", "Больница Лос-Сантос", "Grove Street", "The Ballas", "The Rifa", "Varios Los Aztecas", "Los Santos Vagos", "La Cosa Nostra", "Русская Мафия", "Yakuza", "Министерство Здравоохранения", "Больница Сан-Фиерро", "Больница Лас-Вентурас", "ТВ-Центр" };
Код if(strcmp(cmd, "/setleader", true) == 0){ if (PlayerInfo[playerid][pAdmin]<5 || !IsPlayerConnected(playerid))return 1; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SCM(playerid, COLOR_GRAD2, "Используй /setleader [id игрока] [id орагнизации] [id скина]"); new para1 = ReturnUser(tmp); if(!IsPlayerConnected(para1) || para1 == INVALID_PLAYER_ID) return 1; new level, giveplayer[MAX_PLAYER_NAME], sendername[MAX_PLAYER_NAME]; new string[144]; tmp = strtok(cmdtext, idx); level = strval(tmp); if(level > MAX_ORGS || level < 0) return SCM(playerid, COLOR_GRAD2, "ID организации от 0 до 30"); if(level == 0){ SetPlayerSkin(para1, PlayerInfo[para1][pChar]); PlayerInfo[para1][pRang] = 0; PlayerInfo[para1][pLeader] = 0; PlayerInfo[para1][pMember] = 0; // Если нужно, вставишь сюда уведомление о увольнении SetPlayerToTeamColor(para1); return 1; } if(PlayerInfo[para1][pWarn]>0) return SendClientMessage(playerid, COLOR_GRAD1,"Этот игрок не может вступать в организации из-за наличия предупреждений"); GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[para1][pLeader] = level; PlayerInfo[para1][pMember] = level; PlayerInfo[para1][pRang] = 10; PlayerInfo[playerid][pJob] = 0; SetPlayerSkin(para1, PlayerInfo[para1][pSkin]); SetPlayerToTeamColor(para1); format(string, sizeof(string), "Вы назначили %s руководить организацией \"%s\"", giveplayer, orgName[level]); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "%s назначил Вас лидером организации \"%s\"",sendername , orgName[level]); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "[Внимание] %s[%i] назначил %s[%d] лидером организации \"%s\" ", sendername, playerid, giveplayer, para1, orgName[level]); SendAdminMessage(0xFF0000AA, string); }
Оптимизировал, привел код в более-менее нормальный вид. Исправил пару очевидных ошибок. Если привести остальные команды к такому виду, мод станет чуточку лучше) завтра проверю команду, сегодня занят спасибо большое !!!!!!!!!!!!!!Добавлено (28.07.2015, 07:15) ---------------------------------------------
Цитата Len1n (  ) Прости, не удержался, увидев эту комманду...
Ко всем define: Код #define MAX_ORGS 30
Ко всем new: Код new orgName[MAX_ORGS+1][64] = { "Гражданский", "Правительство", "Мэрия Лос-Сантос", "Мэрия Сан-Фиерро", "Мэрия Лас-Вентурас", "Министерство Обороны", "Cухопутные войска", "Военно-Воздушные Силы", "Военно-морской флот", "Министерство-Внутренних-Дел", "Полиция Лос-Сантос", "Полиция Сан-Фиерро", "Полиция Лас-Вентурас", "Федеральное Бюро Расследований", "ТВ и Радио", "Радиоцентр Лос-Сантос", "Радиоцентр Сан-Фиерро", "Радиоцентр Лас-Вентурас", "Больница Лос-Сантос", "Grove Street", "The Ballas", "The Rifa", "Varios Los Aztecas", "Los Santos Vagos", "La Cosa Nostra", "Русская Мафия", "Yakuza", "Министерство Здравоохранения", "Больница Сан-Фиерро", "Больница Лас-Вентурас", "ТВ-Центр" };
Код if(strcmp(cmd, "/setleader", true) == 0){ if (PlayerInfo[playerid][pAdmin]<5 || !IsPlayerConnected(playerid))return 1; tmp = strtok(cmdtext, idx); if(!strlen(tmp)) return SCM(playerid, COLOR_GRAD2, "Используй /setleader [id игрока] [id орагнизации] [id скина]"); new para1 = ReturnUser(tmp); if(!IsPlayerConnected(para1) || para1 == INVALID_PLAYER_ID) return 1; new level, giveplayer[MAX_PLAYER_NAME], sendername[MAX_PLAYER_NAME]; new string[144]; tmp = strtok(cmdtext, idx); level = strval(tmp); if(level > MAX_ORGS || level < 0) return SCM(playerid, COLOR_GRAD2, "ID организации от 0 до 30"); if(level == 0){ SetPlayerSkin(para1, PlayerInfo[para1][pChar]); PlayerInfo[para1][pRang] = 0; PlayerInfo[para1][pLeader] = 0; PlayerInfo[para1][pMember] = 0; // Если нужно, вставишь сюда уведомление о увольнении SetPlayerToTeamColor(para1); return 1; } if(PlayerInfo[para1][pWarn]>0) return SendClientMessage(playerid, COLOR_GRAD1,"Этот игрок не может вступать в организации из-за наличия предупреждений"); GetPlayerName(para1, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); PlayerInfo[para1][pLeader] = level; PlayerInfo[para1][pMember] = level; PlayerInfo[para1][pRang] = 10; PlayerInfo[playerid][pJob] = 0; SetPlayerSkin(para1, PlayerInfo[para1][pSkin]); SetPlayerToTeamColor(para1); format(string, sizeof(string), "Вы назначили %s руководить организацией \"%s\"", giveplayer, orgName[level]); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "%s назначил Вас лидером организации \"%s\"",sendername , orgName[level]); SCM(playerid, 0xFFCD00AA, string); format(string, sizeof(string), "[Внимание] %s[%i] назначил %s[%d] лидером организации \"%s\" ", sendername, playerid, giveplayer, para1, orgName[level]); SendAdminMessage(0xFF0000AA, string); }
Оптимизировал, привел код в более-менее нормальный вид. Исправил пару очевидных ошибок. Если привести остальные команды к такому виду, мод станет чуточку лучше) Чёт "свой" скин не даётся(
|
|
|
|
|
| Len1n |
Дата: Вторник, 28.07.2015, 12:00 | Сообщение # 4
|
Боец
Сообщений: 89
Статус: Offline
|
mazyakaDM, в комманде не было установки скинов, я даже и не думал что-то своё делать, ибо не знаю их ID.  Добавлено (28.07.2015, 12:00) --------------------------------------------- Я думаю ты в состоянии создать свежий список скинов)
Связь со мной: Skype: po61-rap E-Mail: [email protected]
if(time>=1500 && rep<500) { cout « "200 репы накручено!"; rep+=200; }
|
|
|
|
|
| mazyakaDM |
Дата: Вторник, 28.07.2015, 12:40 | Сообщение # 5
|
Новичок
Сообщений: 5
Статус: Offline
|
Цитата Len1n (  ) mazyakaDM, в комманде не было установки скинов, я даже и не думал что-то своё делать, ибо не знаю их ID. Добавлено (28.07.2015, 12:00) --------------------------------------------- Я думаю ты в состоянии создать свежий список скинов) +) Спасибо большое тебе.
|
|
|
|
|
| Artem_Buero |
Дата: Пятница, 30.10.2015, 09:12 | Сообщение # 6
|
Сообщений: 4223
Статус: Offline
|
МОЙ ВК - https://vk.com/gospodin_buero
|
|
|
|
|