Последние Файлы GTA 4
Последние Файлы GTA-MP
Реклама
проверка на левел
Jay-izi Дата: Среда, 16.07.2008, 13:32 | Сообщение # 1
Уверенный в себе
Группа:
Продвинутые
Сообщений: 166
Награды:
1
Город: МосквА
Репутация:
21
Замечания:
60%
Статус:
как в FS сделать проверку на левел? я хочу фишки сделать доступные только с опред.левела., но нужно именно для FS если не трудно, напишите FS готовый c одной командой /ooo
проверка: левел>=10 принт "123" иначе принт "у вас не достаточно опыта."
заранее спасибо
Alex009 Дата: Четверг, 17.07.2008, 18:35 | Сообщение # 2
Уважаемый человек
Группа:
Продвинутые
Сообщений: 917
Награды:
10
Репутация:
661
Замечания:
0%
Статус:
В FS НЕВОЗМОЖНО!Можно только вписать в мод!если хочеш то подключи к FS инклуд player.inc но...он потянет и все остальные и получится шо ты обматериш весь этот FS и впишеш(как это надо сразу делать) в мод!Добавлено (17.07.2008, 18:35) --------------------------------------------- P.S. в самой GTO есть вот такая штука:GetPlayerLevel(playerid); берёш и пишеш мини скрипт-команду и суёш в мод...и никаких проблем
Controllable NPC developer soProject developer
Jay-izi Дата: Четверг, 17.07.2008, 20:37 | Сообщение # 3
Уверенный в себе
Группа:
Продвинутые
Сообщений: 166
Награды:
1
Город: МосквА
Репутация:
21
Замечания:
60%
Статус:
ясн, значит в мод... а примерчик с GetPlayerLevel(playerid) можешь накатать?
Alex009 Дата: Суббота, 19.07.2008, 07:07 | Сообщение # 4
Уважаемый человек
Группа:
Продвинутые
Сообщений: 917
Награды:
10
Репутация:
661
Замечания:
0%
Статус:
if(strcmp(cmd, "/ooo", true) == 0) {new lev; lev = GetPlayerLevel(playerid); if(lev > 9)//10,11,12 и т.п. {SendClientMessage(playerid, 0xEFEFF7AA, "Ты не угадал комманду))гы гы))"); } else { SendClientMessage(playerid, 0xEFEFF7AA, "Идика подкачай левел!"); } }
Controllable NPC developer soProject developer
Jay-izi Дата: Суббота, 19.07.2008, 13:24 | Сообщение # 5
Уверенный в себе
Группа:
Продвинутые
Сообщений: 166
Награды:
1
Город: МосквА
Репутация:
21
Замечания:
60%
Статус:
Вот весь паблик от 0.6.0, даже простая команда на вывод текста не пашет, хотя компилится без ошибок
Code
public OnPlayerCommandText(playerid,cmdtext[]) // process commands { //Debug("GTO.pwn > OnPlayerCommandText(playerid,text[])) - Start"); if (!IsPlayerConnected(playerid)) { //Debug("GTO.pwn > OnPlayerCommandText(playerid,text[])) - Stop(401)"); return 1; } fixchars(cmdtext); // Chat fix new cmdfound; cmdfound += CommandHandler(playerid,cmdtext); cmdfound += AccountCommandHandler(playerid,cmdtext); cmdfound += GangCommandHandler(playerid,cmdtext); cmdfound += AmmunationCommandHandler(playerid,cmdtext); cmdfound += BankCommandHandler(playerid,cmdtext); cmdfound += RaceCommandHandler(playerid,cmdtext); cmdfound += AdminRaceCommandHandler(playerid,cmdtext); cmdfound += AdminCommandHandler(playerid,cmdtext); //rcon admins cmdfound += AdminCommandHandlerSys(playerid,cmdtext); //SYSTEM cmdfound += DMCommandHandler(playerid,cmdtext); cmdfound += AdminDMCommandHandler(playerid,cmdtext); cmdfound += AdmCommandHandler(playerid,cmdtext); //admins cmdfound += ModCommandHandler(playerid,cmdtext); //moderators cmdfound += BusinessCommandHandler(playerid,cmdtext); cmdfound += HousesCommandHandler(playerid,cmdtext); cmdfound += TaxiCommandHandler(playerid,cmdtext); // cmdfound += FuelCommandHandler(playerid,cmdtext); cmdfound += CarsCommandHandler(playerid,cmdtext); if (cmdfound > 0) { new cmd[20]; new idx; set(cmdtext,strcharsplit(cmdtext, idx,strchar(" "))); if ((strcomp(cmd, "/login", true) == 1) || (strcomp(cmd, "/register", true) == 1)) { new logstring[256]; format(logstring, sizeof (logstring), "player: %d: %s: %s *********",playerid,oGetPlayerName(playerid),cmd); WriteCMDLog(logstring); } else { new logstring[256]; format(logstring, sizeof (logstring), "player: %d: %s: %s",playerid,oGetPlayerName(playerid),cmdtext); WriteCMDLog(logstring); } //Debug("GTO.pwn > OnPlayerCommandText(playerid,text[])) - Stop(422)"); return 1; } //Debug("GTO.pwn > OnPlayerCommandText(playerid,text[])) - Stop"); if(strcmp(cmdtext, "/ooo", true) == 0) {new lev; lev = GetPlayerLevel(playerid); if(lev > 9)//10,11,12 è ò.ï. {SendClientMessage(playerid, 0xEFEFF7AA, "123"); } else { SendClientMessage(playerid, 0xEFEFF7AA, "321"); } } if(strcmp(cmdtext, "/aaa", true) == 0) { SendClientMessage(playerid, 0xEFEFF7AA, "bbb"); return 1; } return 0; }
Alex009 Дата: Суббота, 19.07.2008, 14:41 | Сообщение # 6
Уважаемый человек
Группа:
Продвинутые
Сообщений: 917
Награды:
10
Репутация:
661
Замечания:
0%
Статус:
инклуд commandhandler.inc
Controllable NPC developer soProject developer
Jay-izi Дата: Суббота, 19.07.2008, 17:20 | Сообщение # 7
Уверенный в себе
Группа:
Продвинутые
Сообщений: 166
Награды:
1
Город: МосквА
Репутация:
21
Замечания:
60%
Статус:
вот, думаешь в нем проблема?
Code
// // Created: 05.09.06 // Aurthor: Iain Gilbert // #if defined _commandhandler_included #endinput #endif #define _commandhandler_included #pragma library commandhandler #include "base" #include "utils\gtoutils" #include "player" #include "account" #define MONEY_CMD1 50000; //SkyDiving #define MONEY_CMD2 100000; //RepairCar forward CommandHandler(playerid,text[]); public CommandHandler(playerid,text[]) // process player commands { if (!IsPlayerConnected(playerid)) return 0; new cmd[20]; new idx; set(cmd,strcharsplit(text, idx,strchar(" "))); if(strcomp(cmd, "/sound", true) == 1) { new string[MAX_STRING]; set(string,text); strdel(string, 0, idx); new soundid; soundid = strval(strcharsplit(text, idx,strchar(" "))); if (soundid <= 0) { SendPlayerFormattedText(playerid, lang_texts[1][15] , 0,COLOUR_RED); return 1; } new Float:playerx,Float:playery,Float:playerz; GetPlayerPos(playerid,playerx,playery,playerz); PlayerPlaySound(playerid,soundid,playerx,playery,playerz); format(string,sizeof(string), lang_texts[1][16] ,soundid); SendPlayerFormattedText(playerid,string, 0,COLOUR_XP_GOOD); return 1; } if(strcomp(cmd, "/dropammo", true) == 1) { ADMDropAmmo(playerid); // for (new i=1;i<MAX_WEAPONS;i++) // { // PlayerWeapons[playerid][i] = 0; // } SendPlayerFormattedText(playerid, lang_texts[1][33] , 0,COLOUR_WHITE); CheckPlayerLevel(playerid); return 1; } if(strcomp(cmd, "/help", true) == 1) { SendClientMessage(playerid, COLOUR_WHITE, lang_texts[15][2]); SendClientMessage(playerid, COLOUR_LIGHTRED, lang_texts[15][3]); SendClientMessage(playerid, COLOUR_WHITE, lang_texts[15][4]); SendClientMessage(playerid, COLOUR_WHITE, lang_texts[15][5]); // for (new i=2; i<9; i++) SendPlayerScrollingText(playerid, lang_texts[15][i]); return 1; } if( (strcomp(cmd, "/objective", true) == 1) || (strcomp(cmd, "/info", true) == 1) ) { SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][6]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][7]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][8]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][9]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][10]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][11]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][12]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][13]); // for (new i=10; i<17; i++) SendPlayerScrollingText(playerid, lang_texts[15][i]); return 1; } if(strcomp(cmd, "/commands", true) == 1) { SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][15]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][16]); SendClientMessage(playerid, COLOUR_LIGHTGREEN, lang_texts[15][17]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][18]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][19]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][20]); SendClientMessage(playerid, COLOUR_LIGHTBLUE, lang_texts[15][21]); SendClientMessage(playerid, COLOUR_WHITE, lang_texts[15][22]); SendClientMessage(playerid, COLOUR_WHITE, lang_texts[15][23]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][24]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][25]); SendClientMessage(playerid, COLOUR_LIGHTRED, lang_texts[15][26]); SendClientMessage(playerid, COLOUR_PURPLE, lang_texts[15][27]); SendClientMessage(playerid, COLOUR_LIGHTRED, lang_texts[15][28]); SendClientMessage(playerid, COLOUR_WHITE, lang_texts[15][29]); // for (new i=18; i<61; i++) SendPlayerScrollingText(playerid, lang_texts[15][i] ); // for (new i=84; i<92; i++) SendPlayerScrollingText(playerid, lang_texts[15][i] ); return 1; } if((strcomp(cmd, "/stats", true) == 1) || (strcomp(cmd, "/status", true) == 1) || (strcomp(cmd, "/stat", true) == 1)) { new string[MAX_STRING]; SendClientMessage(playerid,COLOUR_GREEN, lang_texts[15][35] ); new sid; sid=Player[playerid][Status]; if (sid>=1 && sid<=10) {format(string,sizeof(string),lang_texts[12][87],sid);} else if (sid>10) {format(string,sizeof(string),lang_texts[12][86],sid);} else {format(string,sizeof(string),lang_texts[12][88]);} //Status SendClientMessage(playerid,COLOUR_LIGHTRED,string); format(string, sizeof(string), lang_texts[15][37] , GetLevelName(Player[playerid][Level]), PlayerGangName[playerid] ); SendClientMessage(playerid,COLOUR_LIGHTBLUE,string); format(string, sizeof(string), lang_texts[15][38] , Player[playerid][Level], Player[playerid][XP], Player[playerid][Money], Player[playerid][Bank], GetPlayerTotalMoney(playerid) ); SendClientMessage(playerid,COLOUR_LIGHTBLUE,string); format(string, sizeof(string), lang_texts[15][39] , Player[playerid][Deaths], Player[playerid][Kills], Player[playerid][Jailed], Player[playerid][Muted] ); SendClientMessage(playerid,COLOUR_LIGHTRED,string); return 1; } if(strcomp(cmd, "/level", true) == 1) { CheckPlayerLevel(playerid); new string[256]; SendClientMessage(playerid,COLOUR_GREEN, lang_texts[15][70] ); format(string, sizeof(string), lang_texts[15][71] , Player[playerid][Level]); SendClientMessage(playerid,COLOUR_XP_GOOD, string); format(string, sizeof(string), lang_texts[15][72] , Player[playerid][XP]); SendClientMessage(playerid,COLOUR_XP_GOOD, string); format(string, sizeof(string), lang_texts[15][73] , GetXPToLevel(playerid, Player[playerid][Level] + 1)); SendClientMessage(playerid,COLOUR_XP_BAD, string); return 1; } if(strcomp(cmd, "/version", true) == 1) { new string[MAX_STRING]; SendClientMessage(playerid, COLOUR_MISC, lang_texts[15][74] ); format(string, sizeof(string), lang_texts[15][75] , VERSION); SendClientMessage(playerid, COLOUR_GREEN,string); SendClientMessage(playerid, COLOUR_MISC, lang_texts[15][76] ); return 1; } if ( (strcomp(cmd, "/kill", true) == 1) && !IsPlayerInAnyDM(playerid) ) { SetPlayerHealth(playerid,0.0); return 1; } if(strcomp(cmd, "/handsup", true) == 1) { if(GetPlayerState(playerid) == PLAYER_STATE_ONFOOT) { SetPlayerSpecialAction(playerid,SPECIAL_ACTION_HANDSUP); // new Float:playerx,Float:playery,Float:playerz; // GetPlayerPos(playerid,playerx,playery,playerz); // PlayerPlaySound(playerid,1187,playerx,playery,playerz); return 1; } } if(strcomp(cmd, "/dance", true) == 1) { new dancestyle; dancestyle = strval(strcharsplit(text, idx,strchar(" "))); if ((dancestyle < 1) || (dancestyle > 3)) { SendPlayerFormattedText(playerid, lang_texts[15][83] , 0,COLOUR_RED); return 1; } if(dancestyle == 1) { SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE1); } else if(dancestyle == 2) { SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE2); } else if(dancestyle == 3) { SetPlayerSpecialAction(playerid,SPECIAL_ACTION_DANCE3); } return 1; } if(strcomp(cmd, "/alladmins", true) == 1) { new string[MAX_STRING]; new idsa=0; SendClientMessage(playerid, COLOUR_WHITE, lang_texts[1][28]); for (new id = 0; id < MAX_PLAYERS; id++) { if ( (IsPlayerConnected(id) && IsPlayerAdmin(id)) || (IsPlayerConnected(id) && IsPlayerAdm(id)) ) { format(string, sizeof(string), lang_texts[1][29] , oGetPlayerName(id), id); SendClientMessage(playerid, COLOUR_LIGHTBLUE,string); idsa++; } } for (new id = 0; id < MAX_PLAYERS; id++) { if ( IsPlayerConnected(id) && IsPlayerMod(id) ) { format(string, sizeof(string), lang_texts[1][30] , oGetPlayerName(id), id); SendClientMessage(playerid, COLOUR_LIGHTGREEN,string); idsa++; } } if (idsa==0) { SendClientMessage(playerid, COLOUR_GREY,lang_texts[1][31]); } return 1; } if(strcomp(cmd, "/time", true) == 1) { new string[MAX_STRING]; new hour,minute,second; gettime(hour,minute,second); if ( (hour <= 9) && (minute <= 9) ) {format(string,sizeof(string),"0%d:0%d",hour,minute);} if ( (hour <= 9) && (minute > 9) ) {format(string,sizeof(string),"0%d:%d",hour,minute);} if ( (hour > 9) && (minute <= 9) ) {format(string,sizeof(string),"%d:0%d",hour,minute);} if ( (hour > 9) && (minute > 9) ) {format(string,sizeof(string),"%d:%d",hour,minute);} GameTextForPlayer(playerid,string,999,1); //SendClientMessage(playerid, COLOUR_WHITE,string ); PlayerPlaySound(playerid,1085,0,0,0); format(string, sizeof(string),lang_texts[1][32], oGetPlayerName(playerid), playerid); SendClientMessageToAll(COLOUR_GREY, string); return 1; } if(strcomp(cmd, "/givecash", true) == 1) { new string[256]; new giveplayerid, moneys; new sendername[MAX_PLAYER_NAME]; new playermoney; new giveplayer[MAX_PLAYER_NAME]; new tmp[256]; tmp = strcharsplit(text, idx,strchar(" ")); if(!strlen(tmp)) { SendClientMessage(playerid, COLOUR_MISC, lang_texts[15][77] ); return 1; } giveplayerid = strval(tmp); tmp = strcharsplit(text, idx,strchar(" ")); if(!strlen(tmp)) { SendClientMessage(playerid, COLOUR_MISC, lang_texts[15][78] ); return 1; } moneys = strval(tmp); if (IsPlayerConnected(giveplayerid)) { GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer)); GetPlayerName(playerid, sendername, sizeof(sendername)); playermoney = oGetPlayerMoney(playerid); if (moneys > 0 && playermoney >= moneys) { oGivePlayerMoney(playerid, (0 - moneys),1); oGivePlayerMoney(giveplayerid, moneys,1); format(string, sizeof(string), lang_texts[15][79] , giveplayer,giveplayerid, moneys); SendClientMessage(playerid, COLOUR_MONEY_GOOD, string); format(string, sizeof(string), lang_texts[15][80] , moneys, sendername, playerid); SendClientMessage(giveplayerid, COLOUR_MONEY_GOOD, string); new logstring[256]; format(logstring, sizeof (logstring), "%s(playerid:%d) has transfered %d to %s(playerid:%d)",sendername, playerid, moneys, giveplayer, giveplayerid); WriteLog(logstring); } else { SendClientMessage(playerid, COLOUR_MISC, lang_texts[15][81] ); } } else { format(string, sizeof(string), lang_texts[15][82] , giveplayerid); SendClientMessage(playerid, COLOUR_MISC, string); } return 1; } //ПЛАТНЫЕ КОМАНДЫ if ( (strcomp(cmd, "/skydive", true) == 1) && !IsPlayerInAnyDM(playerid) ) { if (Player[playerid][Jailed] == 1) {return 0;} if(GetPlayerMoney(playerid) < 10000) { SendClientMessage(playerid, 0x00FF00AA, " Недостаточно денег. Нужно $10.000."); return 1; } new string[MAX_STRING]; SendPlayerFormattedText(playerid, lang_texts[1][19] , 0,COLOUR_WHITE); new Float:playerx,Float:playery,Float:playerz; GivePlayerWeapon(playerid,46,1); GivePlayerMoney(playerid,-10000); GetPlayerPos(playerid,playerx,playery,playerz); PlayerPlaySound(playerid,1057,0,0,0); SetPlayerPos(playerid,playerx,playery,playerz+1200); // format(string,sizeof(string), lang_texts[1][16] ,soundid); // SendPlayerFormattedText(playerid,string, 0,COLOUR_XP_GOOD); format(string,sizeof(string), lang_texts[1][20]); GameTextForPlayer(playerid,string,4000,5); format(string,sizeof(string), lang_texts[1][21] ,oGetPlayerName(playerid),playerid); SendClientMessageToRegistered(COLOUR_GREY, string); PlayerPlaySound(playerid,1039,0,0,0); return 1; } if(strcomp(cmd, "/repair", true) == 1) { return 0; } return 0; }
Alex009 Дата: Суббота, 19.07.2008, 17:47 | Сообщение # 8
Уважаемый человек
Группа:
Продвинутые
Сообщений: 917
Награды:
10
Репутация:
661
Замечания:
0%
Статус:
сюда надо дописывать команду твою,перед return 0; последним
Controllable NPC developer soProject developer
Jay-izi Дата: Суббота, 19.07.2008, 17:58 | Сообщение # 9
Уверенный в себе
Группа:
Продвинутые
Сообщений: 166
Награды:
1
Город: МосквА
Репутация:
21
Замечания:
60%
Статус:
непонял, т.е. вот это Code
if(strcmp(cmd, "/ooo", true) == 0) {new lev; lev = GetPlayerLevel(playerid); if(lev > 9)//10,11,12 и т.п. {SendClientMessage(playerid, 0xEFEFF7AA, "Ты не угадал комманду))гы гы))"); } else { SendClientMessage(playerid, 0xEFEFF7AA, "Идика подкачай левел!"); } }
надо убрать из геммода и вписать в инклуд?Добавлено (19.07.2008, 17:58) --------------------------------------------- всё, спасибо, попробовал, получилось. плюсег поставить неполучается.
и еще такой маленький вопрос: вот если делать ФС с 20 командами, которые печатают текст, то ФС ненагружает сервер. А вот если их 1000? или текст он невоспринимает как нагрузку?
Alex009 Дата: Воскресенье, 20.07.2008, 12:16 | Сообщение # 10
Уважаемый человек
Группа:
Продвинутые
Сообщений: 917
Награды:
10
Репутация:
661
Замечания:
0%
Статус:
не ко мне вопрос))по мойму на текст плевать ток таймеры нагружают особенно если повторяются каждую секунду или меньше
Controllable NPC developer soProject developer
Zaprydni Дата: Вторник, 12.08.2008, 17:52 | Сообщение # 11
Новенький
Группа:
Продвинутые
Сообщений: 10
Награды:
1
Репутация:
-2
Замечания:
0%
Статус:
Я не знаю)))