 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Вопросы и ответы по GTA SAMP [от 19.03.2013]
| |
| Weddew | Дата: Вторник, 19.03.2013, 15:11 | Сообщение # 1 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| В этой теме вы сможете получить ответы, на многие ваши вопросы по PAWN.
Новичкам:
- Внятно объясняйте Вашу проблему, если Вы получили ошибку, обязательно выкладывайте строки, на которые "ругается" компилятор.
- Задавайте вопросы исключительно по коду, а не по системам, которые имеются у Вас в моде.
- Помощь идет только по желанию пользователя, если человек помог Вам только частично, не нужно начинать поливать его грязью.
- Возможно тип Вашей проблемы уже обсуждался на форуме, воспользуйтесь поиском.
- В этой теме пользователи лишь оказывают помощь в написании кода, а не пишут его за Вас.
- Если Вы хотите отблагодарить пользователя, жмите на кнопку
. (Только для продвинутых, и выше) - Если Вы уже задавали вопрос и не получили на него ответа, то лучше написать в ЛС одному из участников группы
, чем засорять тему. - Если Вы сами решили свою проблему, то напишите, как Вы ее решили.
- Если Вас просят выложить код функций, то используйте для этого сервис pastebin.com
Скриптерам: - Не оскорблять новичков.
- Не засорять тему сообщениями, подобные этому: "Закрой PAWNO и иди делай уроки".
- Не посылать в поиск. Пользователь итак уже пришёл сюда из поиска. Если решение проблемы уже было опубликовано, то указать в какой теме
- Как можно понятней объяснять решение той, или иной проблемы, по возможности приводить примеры.
Инструкции: - [cut noguest=Краткая инструкция для вшивания FS в мод]
1) Все из callback OnFilterScriptInit вставляем в конец callback OnGameModeInit перед словом return. 2) Все из callback OnFilterScriptExit вставляем в конец callback OnGameModeExit перед словом return. 3) Все объявления переменных (new ...) и констант (const ...; #define ... ...) в начало мода. 4) Все прототипы (forward ...(...) ) ко всем прототипам. 5) Все описания нестандартных функций (public ...(...); stock ...(...); ...(...){...} ), которых нет в моде, вставляем в конец мода.
P.S. Данный мануал не гарантирует, что после копирования все будет работать, так как еще потребуется подгонять одни системы под другие. P.P.S Если в одном из callback`ов Вы не обнаружили кода, то переходите к следующему пункту инструкции. [/cut] - [cut noguest=Защита от ботов]
В OnPlayerConnect [pwn]if(GetPlayersSameIp(playerid) > 3) Kick(playerid);[/pwn] В конец мода [pwn]stock GetPlayersSameIp(playerid) {//by Weddew //Возвращает количество подключенных игроков с таким же IP как у playerid new count = 0, p_ip[16], i_ip[16]; GetPlayerIp(playerid, p_ip, sizeof(p_ip)); for(new i = 0; i < MAX_PLAYERS; i++) { GetPlayerIp(playerid, i_ip, sizeof(i_ip)); if(i != playerid) { if(!strcmp(p_ip, i_ip, false)) count++; } } return count; }[/pwn] [/cut] - [cut noguest=Проверка на Role Play ник]
В конец мода: [pwn] stock IsARPNickname(playerid) { //by Weddew new p_n[MAX_PLAYER_NAME], dcount = 0; GetPlayerName(playerid, p_n, sizeof(p_n)) for(i = 0; i < strlen(p_n); i++) { if(p_n[i] == '_') dcount++; } if(dcount != 1 || p_n[0] == '_' || p_n[strlen(p_n)-1] == '_') return false; return true; }[/pwn]
В OnPlayerConnect
[pwn] if(!IsARPNickname(playerid)) Kick(playerid);[/pwn]
P.S.: Не пропустит: _Nick_Name_, _Nick_Name, NickName_ Пропустит: Nick_Name, NICK_NAME, NiCk_name, nick_name[/cut]
www.weddew-shop.ru
Сообщение отредактировал Weddew - Среда, 23.10.2013, 21:45 |
| |
|
|
| massaoff | Дата: Вторник, 11.06.2013, 12:34 | Сообщение # 991 |
|
Местный
Группа:
I'm V.I.P.
Сообщений: 535
Награды: 4
Город: Березники
Репутация: 187
Замечания: 40%
Статус: 
| Цитата (kap9822) Кто может подсказать как очистить дома от игроков?Я скачал сервер,настроил но захожу на сервер и не могу дом купить.Все забиты другими людьми. kap9822, В файле с домами(наверное: property.cfg) убирайте ники.
Cruiser, используйте stock если функция не вызывается через таймер. Если используете таймеры, то вам нужен public. stock не будет работать на таймерах, в отличие от public который будет работать и так и так. Но использовать public без необходимости юзать таймер - не рационально.
- Учимся рипать сайт - Memfiso-RPG мод Оказываю платную помощь, в создании и редактировании(доработка, исправление багов, реализация ваших идей) ваших модов/скриптов выполненных в pawno. Обращайтесь в скайп: massaoff РАБОТАЮ ТОЛЬКО С 50% ПРЕДОПЛАТОЙ!
Сообщение отредактировал massaoff - Вторник, 11.06.2013, 12:36 |
| |
|
|
| Weddew | Дата: Вторник, 11.06.2013, 21:18 | Сообщение # 992 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Cruiser, выложите полностью LoginCallback
www.weddew-shop.ru
|
| |
|
|
| Cruiser | Дата: Вторник, 11.06.2013, 21:24 | Сообщение # 993 |
|
Новенький
Группа:
Пользователи
Сообщений: 25
Награды: 0
Город: Армавир
Репутация: 0
Замечания: 0%
Статус: 
| Weddew, вот:
Код public LoginCallback(i, password[]) { new rows, fields, string[256], maximum[256]; cache_get_data(rows, fields); if(!rows) { if(GetPVarInt(i, "wrongPass") == 2) return SendClientMessage(i, COLOR_RED,"***{FFFFFF}Âû ââåëè áîëåå 3-åõ ðàç íåïðàâèëüíî ïàðîëü îò àêêàóíòà è áûëè êèêíóòû"), Kick(i); SetPVarInt(i, "wrongPass", GetPVarInt(i, "wrongPass")+1); format(string, sizeof(string), "{DAA520}Ïàðîëü íå âåðíûé, ïîâòîðèòå ïîïûòêó åùå ðàç\nÏîïûòîêå îñòàëîñü: %i/3", 3 - GetPVarInt(i, "wrongPass")); ShowPlayerDialog(i, 2, DIALOG_STYLE_INPUT, "{FFFFFF}Àâòîðèçàöèÿ:{FF0000}Îøèáêà", string, "Äàëåå", "Îòìåíà"); return 1; } cache_get_field_content(0, "Level", maximum), PlayerInfo[i][pLevel] = strval(maximum); cache_get_field_content(0, "AdminLevel", maximum), PlayerInfo[i][pAdmin] = strval(maximum); cache_get_field_content(0, "HelperLevel", maximum), PlayerInfo[i][pHelper] = strval(maximum); cache_get_field_content(0, "DonateRank", maximum), PlayerInfo[i][pDonateRank] = strval(maximum); cache_get_field_content(0, "DonateRankTime", maximum), PlayerInfo[i][pDonateRankTime] = strval(maximum); cache_get_field_content(0, "UpgradePoints", maximum), PlayerInfo[i][gPupgrade] = strval(maximum); cache_get_field_content(0, "ConnectedTime", maximum), PlayerInfo[i][pConnectTime] = strval(maximum); cache_get_field_content(0, "Sex", maximum), PlayerInfo[i][pSex] = strval(maximum); cache_get_field_content(0, "Age", maximum), PlayerInfo[i][pAge] = strval(maximum); cache_get_field_content(0, "Origin", maximum), PlayerInfo[i][pOrigin] = strval(maximum); cache_get_field_content(0, "MuteTime", maximum), PlayerInfo[i][pMuteTime] = strval(maximum); cache_get_field_content(0, "FMuteTime", maximum), PlayerInfo[i][pFMuteTime] = strval(maximum); cache_get_field_content(0, "Respect", maximum), PlayerInfo[i][pExp] = strval(maximum); cache_get_field_content(0, "Money", maximum), PlayerInfo[i][pMoney] = strval(maximum); cache_get_field_content(0, "Bank", maximum), PlayerInfo[i][pAccount] = strval(maximum); cache_get_field_content(0, "Crimes", maximum), PlayerInfo[i][pCrimes] = strval(maximum); cache_get_field_content(0, "Deaths", maximum), PlayerInfo[i][pDeaths] = strval(maximum); cache_get_field_content(0, "Arresteed", maximum), PlayerInfo[i][pArrested] = strval(maximum); cache_get_field_content(0, "WantedDeaths", maximum), PlayerInfo[i][pWantedDeaths] = strval(maximum); cache_get_field_content(0, "Phonebook", maximum), PlayerInfo[i][pPhoneBook] = strval(maximum); cache_get_field_content(0, "LottoNr", maximum), PlayerInfo[i][pLottoNr] = strval(maximum); cache_get_field_content(0, "Fishes", maximum), PlayerInfo[i][pFishes] = strval(maximum); cache_get_field_content(0, "BiggestFish", maximum), PlayerInfo[i][pBiggestFish] = strval(maximum); cache_get_field_content(0, "Job", maximum), PlayerInfo[i][pJob] = strval(maximum); cache_get_field_content(0, "Paycheck", maximum), PlayerInfo[i][pPayCheck] = strval(maximum); cache_get_field_content(0, "HeadValue", maximum), PlayerInfo[i][pHeadValue] = strval(maximum); cache_get_field_content(0, "Jailed", maximum), PlayerInfo[i][pJailed] = strval(maximum); cache_get_field_content(0, "JailTime", maximum), PlayerInfo[i][pJailTime] = strval(maximum); cache_get_field_content(0, "Materials", maximum), PlayerInfo[i][pMats] = strval(maximum); cache_get_field_content(0, "Drugs", maximum), PlayerInfo[i][pDrugs] = strval(maximum); cache_get_field_content(0, "Leader", maximum), PlayerInfo[i][pLeader] = strval(maximum); cache_get_field_content(0, "Member", maximum), PlayerInfo[i][pMember] = strval(maximum); cache_get_field_content(0, "Rank", maximum), PlayerInfo[i][pRank] = strval(maximum); cache_get_field_content(0, "Char", maximum), PlayerInfo[i][pChar] = strval(maximum); cache_get_field_content(0, "DetSkill", maximum), PlayerInfo[i][pDetSkill] = strval(maximum); cache_get_field_content(0, "SexSkill", maximum), PlayerInfo[i][pSexSkill] = strval(maximum); cache_get_field_content(0, "BoxSkill", maximum), PlayerInfo[i][pBoxSkill] = strval(maximum); cache_get_field_content(0, "LawSkill", maximum), PlayerInfo[i][pLawSkill] = strval(maximum); cache_get_field_content(0, "MechSkill", maximum), PlayerInfo[i][pMechSkill] = strval(maximum); cache_get_field_content(0, "JackSkill", maximum), PlayerInfo[i][pJackSkill] = strval(maximum); cache_get_field_content(0, "CarSkill", maximum), PlayerInfo[i][pCarSkill] = strval(maximum); cache_get_field_content(0, "NewsSkill", maximum), PlayerInfo[i][pNewsSkill] = strval(maximum); cache_get_field_content(0, "DrugsSkill", maximum), PlayerInfo[i][pDrugsSkill] = strval(maximum); cache_get_field_content(0, "CookSkill", maximum), PlayerInfo[i][pCookSkill] = strval(maximum); cache_get_field_content(0, "FishSkill", maximum), PlayerInfo[i][pFishSkill] = strval(maximum); cache_get_field_content(0, "CourierSkill", maximum), PlayerInfo[i][pCourierSkill] = strval(maximum); cache_get_field_content(0, "RDrugsSkill", maximum), PlayerInfo[i][pCourierSkill] = strval(maximum); cache_get_field_content(0, "pSHealth", maximum), PlayerInfo[i][pSHealth] = strval(maximum); cache_get_field_content(0, "pHealth", maximum), PlayerInfo[i][pHealth] = strval(maximum); cache_get_field_content(0, "Int", maximum), PlayerInfo[i][pInt] = strval(maximum); cache_get_field_content(0, "Local", maximum), PlayerInfo[i][pLocal] = strval(maximum); cache_get_field_content(0, "Team", maximum), PlayerInfo[i][pTeam] = strval(maximum); cache_get_field_content(0, "PhoneNr", maximum), PlayerInfo[i][pPnumber] = strval(maximum); cache_get_field_content(0, "House", maximum), PlayerInfo[i][pPhousekey] = strval(maximum); cache_get_field_content(0, "VipHouse", maximum), PlayerInfo[i][pVipHousekey] = strval(maximum); cache_get_field_content(0, "Bizz", maximum), PlayerInfo[i][pPbiskey] = strval(maximum); cache_get_field_content(0, "CarLic", maximum), PlayerInfo[i][pCarLic] = strval(maximum); cache_get_field_content(0, "FlyLic", maximum), PlayerInfo[i][pFlyLic] = strval(maximum); cache_get_field_content(0, "BoatLic", maximum), PlayerInfo[i][pBoatLic] = strval(maximum); cache_get_field_content(0, "FishLic", maximum), PlayerInfo[i][pFishLic] = strval(maximum); cache_get_field_content(0, "GunLic", maximum), PlayerInfo[i][pGunLic] = strval(maximum); cache_get_field_content(0, "MotoLic", maximum), PlayerInfo[i][pMotoLic] = strval(maximum); cache_get_field_content(0, "CarTime", maximum), PlayerInfo[i][pCarTime] = strval(maximum); cache_get_field_content(0, "PayDay", maximum), PlayerInfo[i][pPayDay] = strval(maximum); cache_get_field_content(0, "PayDayHad", maximum), PlayerInfo[i][pPayDayHad] = strval(maximum); cache_get_field_content(0, "CDPlayer", maximum), PlayerInfo[i][pCDPlayer] = strval(maximum); cache_get_field_content(0, "Wins", maximum), PlayerInfo[i][pWins] = strval(maximum); cache_get_field_content(0, "Loses", maximum), PlayerInfo[i][pLoses] = strval(maximum); cache_get_field_content(0, "AlcoholPerk", maximum), PlayerInfo[i][pAlcoholPerk] = strval(maximum); cache_get_field_content(0, "DrugPerk", maximum), PlayerInfo[i][pDrugPerk] = strval(maximum); cache_get_field_content(0, "MiserPerk", maximum), PlayerInfo[i][pMiserPerk] = strval(maximum); cache_get_field_content(0, "PainPerk", maximum), PlayerInfo[i][pPainPerk] = strval(maximum); cache_get_field_content(0, "TraderPerk", maximum), PlayerInfo[i][pTraderPerk] = strval(maximum); cache_get_field_content(0, "Tutorial", maximum), PlayerInfo[i][pTut] = strval(maximum); cache_get_field_content(0, "Rent", maximum), PlayerInfo[i][pRent] = strval(maximum); cache_get_field_content(0, "RentVip", maximum), PlayerInfo[i][pRentVip] = strval(maximum); cache_get_field_content(0, "Warnings", maximum), PlayerInfo[i][pWarns] = strval(maximum); cache_get_field_content(0, "TanikMoney", maximum), PlayerInfo[i][ptMoney] = strval(maximum); cache_get_field_content(0, "TanikDrugs", maximum), PlayerInfo[i][ptDrugs] = strval(maximum); cache_get_field_content(0, "TanikMats", maximum), PlayerInfo[i][ptMats] = strval(maximum); cache_get_field_content(0, "Fuel", maximum), PlayerInfo[i][pFuel] = strval(maximum); //cache_get_field_content(0, "Married", maximum), PlayerInfo[i][pMarried] = strval(maximum); //cache_get_field_content(0, "MarriedTo", maximum), PlayerInfo[i][pMarriedTo] = strval(maximum); cache_get_field_content(0, "Wanted", maximum), PlayerInfo[i][pWanted] = strval(maximum); cache_get_field_content(0, "Plant", maximum), PlayerInfo[i][pPlant] = strval(maximum); cache_get_field_content(0, "Trava", maximum), PlayerInfo[i][pTrava] = strval(maximum); cache_get_field_content(0, "Chest", maximum), PlayerInfo[i][pChest] = strval(maximum); cache_get_field_content(0, "FWarn", maximum), PlayerInfo[i][pFWarns] = strval(maximum); cache_get_field_content(0, "Medicaments", maximum), PlayerInfo[i][pMedicaments] = strval(maximum); cache_get_field_content(0, "Flatkey", maximum), PlayerInfo[i][pFlatKey] = strval(maximum); cache_get_field_content(0, "RadioSet", maximum), PlayerInfo[i][pRadio] = strval(maximum); cache_get_field_content(0, "TexOsmotr", maximum), PlayerInfo[i][pTexOsmotr] = strval(maximum); cache_get_field_content(0, "TexOsmotrTime", maximum), PlayerInfo[i][pTexOsmotrTime] = strval(maximum); cache_get_field_content(0, "AdminVig", maximum), PlayerInfo[i][pAdminVig] = strval(maximum); cache_get_field_content(0, "Nounban", maximum), PlayerInfo[i][pNounban] = strval(maximum); cache_get_field_content(0, "Kolban", maximum), PlayerInfo[i][pKolban] = strval(maximum); cache_get_field_content(0, "Donate", maximum), PlayerInfo[i][pDonate] = strval(maximum); cache_get_field_content(0, "Reputathion", maximum), PlayerInfo[i][pReputathion] = strval(maximum); cache_get_field_content(0, "VoenBilet", maximum), PlayerInfo[i][pVoenBilet] = strval(maximum); cache_get_field_content(0, "VoenBiletStage", maximum), PlayerInfo[i][pObyzanVoen] = strval(maximum); cache_get_field_content(0, "VisaLS", maximum), PlayerInfo[i][pVisaLS] = strval(maximum); cache_get_field_content(0, "Skin1", maximum), PlayerInfo[i][pSkin1] = strval(maximum); cache_get_field_content(0, "Skin2", maximum), PlayerInfo[i][pSkin2] = strval(maximum); cache_get_field_content(0, "Skin3", maximum), PlayerInfo[i][pSkin3] = strval(maximum); cache_get_field_content(0, "SummaKredita", maximum), PlayerInfo[i][pSumKredit] = strval(maximum); cache_get_field_content(0, "OplataKredita", maximum), PlayerInfo[i][pOplataKredit] = strval(maximum); cache_get_field_content(0, "Shapka", maximum), PlayerInfo[i][pShapka] = strval(maximum); cache_get_field_content(0, "Passport", maximum), PlayerInfo[i][pPassport] = strval(maximum); cache_get_field_content(0, "MedCarta", maximum), PlayerInfo[i][pMedCarta] = strval(maximum); cache_get_field_content(0, "NakopTime", maximum), PlayerInfo[i][pNakopTime] = strval(maximum); cache_get_field_content(0, "NakopMoney", maximum), PlayerInfo[i][pNakopMoney] = strval(maximum); cache_get_field_content(0, "NakopKarta", maximum), PlayerInfo[i][pNakopKarta] = strval(maximum); if(PlayerInfo[i][pNounban] == 1) { new poiskaccount[256]; new banspr[256]; format(poiskaccount, sizeof(poiskaccount), "Warns-Bans/%s.ini", Name(i)); if(fexist(poiskaccount)) banspr = dini_Get(poiskaccount, "Bans"); format(string, sizeof(string), "{FF0000}Àêêàóíò: {DAA520}%s {FF0000}çàáàíåí[NOUNBAN]\nÌû ïðåäóïðåæäàëè, ÷òî íàðóøàòü ïðàâèëà ñåðâåðà - ïëîõî\nÂû íàñ íå ïîñëóøàëèñü\nÏðè÷èíà Âàøåãî áàíà: {DAA520}%s", Name(i), banspr); ShowPlayerDialog(i, 18, DIALOG_STYLE_MSGBOX, "{FF0000}Àêêàóíò çàáàíåí[NOUNBAN]", string, "Îê", ""); Kick(i); return 1; } ResetPlayerMoney(i); new ip[MAX_PLAYER_NAME]; GetPlayerIp(i, ip, sizeof(ip)); SetPlayerInterior(i,GetPlayerInterior(i)); SetCameraBehindPlayer(i); if(PlayerInfo[i][pDonateRank] > 0) SendClientMessage(i, COLOR_XD,"SA-MP: Âû èñïîëüçóåòå {FF9000}V.I.P àêêàóíò"); if(PlayerInfo[i][pAdmin] > 0) { format(string, sizeof(string), "SA-MP: Âû âîøëè êàê àäìèíèñòðàòîð %d óðîâíÿ.",PlayerInfo[i][pAdmin]); SendClientMessage(i, COLOR_XD,string); format(string, sizeof(string), "SA-MP: %s çàø¸ë êàê àäìèíèñòðàòîð %d óðîâíÿ [%s]. ",Name(i), PlayerInfo[i][pAdmin],ip); SendAdminMessage(COLOR_GREEN2, string); SendHelperMessage(COLOR_GREEN2, string); log("ALogged",string); } if(PlayerInfo[i][pHelper] == 1) { SendClientMessage(i, COLOR_WHITE,"SA-MP: Âû âîøëè êàê õåëïåð"); format(string, sizeof(string), "SA-MP: õåëïåð: %s çàø¸ë íà ñåðâåð [%s]. ",Name(i), ip); SendAdminMessage(COLOR_GREEN2, string); SendHelperMessage(COLOR_GREEN2, string); log("HelpLogged",string); } if(PlayerInfo[i][pAdmin] == 0 && PlayerInfo[i][pHelper] == 0) { new logstr[256]; format(logstr, sizeof(logstr), "%s çàø¸ë íà ñåðâåð, ip: %s.",Name(i),ip); log("Logged", logstr); } format(string, sizeof(string), "~w~Welcome ~n~~y~ %s", Name(i)); GameTextForPlayer(i, string, 5000, 1); DateProp(i); // Ôèêñ äîìà/ìàøèíû/êâàðòèðû if(PlayerInfo[i][pFlatKey] != 255 && strcmp(Name(i), FlatsInfo[PlayerInfo[i][pFlatKey]][fOwner], true) == 0) { } else { if(PlayerInfo[i][pFlatKey] != 255) { PlayerInfo[i][pFlatKey] = 255; } } if(PlayerInfo[i][pPhousekey] != 255 && strcmp(Name(i), HouseInfo[PlayerInfo[i][pPhousekey]][hOwner], true) == 0) { } else { if(PlayerInfo[i][pPhousekey] != 255) { PlayerInfo[i][pPhousekey] = 255; } } if(PlayerInfo[i][pVipHousekey] != 255 && strcmp(Name(i), VipHouseInfo[PlayerInfo[i][pVipHousekey]][vhOwner], true) == 0) { } else { if(PlayerInfo[i][pVipHousekey] != 255) { PlayerInfo[i][pVipHousekey] = 255; } } SetSpawnInfo(i, PlayerInfo[i][pTeam], PlayerInfo[i][pChar], 2223.8,-1147.1,1025.7, 1.0, -1, -1, -1, -1, -1, -1); RemovePlayerAttachedObject(i,1); RemovePlayerAttachedObject(i,2); RemovePlayerAttachedObject(i,3); RemovePlayerAttachedObject(i,4); RemovePlayerAttachedObject(i,5); if(PlayerInfo[i][pMoney] > 50000000) { new babki = PlayerInfo[i][pMoney] - 50000000; PlayerInfo[i][pAccount] += babki; PlayerInfo[i][pMoney] = 50000000; } if(PlayerInfo[i][pAccount] > 200000000) { PlayerInfo[i][pAccount] = 175000000; } if(PlayerInfo[i][pDonate] > 1000) { format(string, sizeof(string), "Ó èãðîêà: %s áûëî çàôèêñèðîâàííî êîëëè÷åñòâî äîíàòà áîëåå 1000 - %d", Name(i), PlayerInfo[i][pDonate]); log("SliveDonate",string); } if(PlayerInfo[i][ptMoney] > 1000000 && PlayerInfo[i][ptMoney] > 0) { new babki = PlayerInfo[i][ptMoney] - 1000000; PlayerInfo[i][pMoney] += babki; PlayerInfo[i][ptMoney] = 1000000; } if(PlayerInfo[i][pAdmin] > 0 || PlayerInfo[i][pHelper] > 0) { new fileadmin[256]; format(fileadmin, sizeof(fileadmin), "AdminAccount/%s.ini", Name(i)); if(fexist(fileadmin)) { new ipyes, adminkey[256]; ipyes = dini_Int(fileadmin,"IpYes"); adminkey = dini_Get(fileadmin, "AdminKey"); PlayerInfo[i][pAdminKey] = adminkey; if(ipyes == 1) { new ipconnect; ipconnect = dini_Int(fileadmin,"IpConnect1"); new ipconnect2; ipconnect2 = dini_Int(fileadmin,"IpConnect2"); new ipconnect3; ipconnect3 = dini_Int(fileadmin,"IpConnect3"); new ipconnect4; ipconnect4 = dini_Int(fileadmin,"IpConnect4"); new plrIP[16]; GetPlayerIp(i, plrIP, sizeof(plrIP)); new ipcon[32]; format(ipcon, sizeof(ipcon), "%d.%d.%d.%d", ipconnect, ipconnect2, ipconnect3, ipconnect4); if(!strcmp(plrIP, ipcon)) { SendClientMessage(i, COLOR_YELLOW, "***{FFFFFF}Âàø àêêàóíò ïîäòâåðæäåí[IP]"); ShowPlayerDialog(i, 183, DIALOG_STYLE_INPUT, "Ïîäòâåðæäåíèå ïðàâ àäìèíèñòðèðîâàíèÿ", "Äëÿ ïðîäîëæåíèÿ âõîäà, Âàì íåîáõîäèìî ïîäâåðäèòü ñâîè ïðàâà àäìèíèñòðàòîðà,\nÂâåäèòå ñâîé ëè÷íûé ïàðîëü", "Ïðîäîëæèòü", "Îòìåíà"); } else { SendClientMessage(i, COLOR_RED, "***{FFFFFF}Âû êèêíóòó çà ïîïûòêó óãîíà àêêàóíòà àäìèíèñòðàòîðà/õåëïåðà[IP]"); Kick(i); return 1; } } else if(ipyes == 0) { ShowPlayerDialog(i, 183, DIALOG_STYLE_INPUT, "Ïîäòâåðæäåíèå ïðàâ àäìèíèñòðèðîâàíèÿ", "Äëÿ ïðîäîëæåíèÿ âõîäà, Âàì íåîáõîäèìî ïîäâåðäèòü ñâîè ïðàâà àäìèíèñòðàòîðà,\nÂâåäèòå ñâîé ëè÷íûé ïàðîëü", "Ïðîäîëæèòü", "Îòìåíà"); SendClientMessage(i, COLOR_YELLOW, "***{FFFFFF}Âàø àêêàóíò ïîäòâåðæäåí[NoIP]"); } else { SendClientMessage(i, COLOR_RED, "***{FFFFFF}Âû êèêíóòó çà ïîïûòêó óãîíà àêêàóíòà àäìèíèñòðàòîðà/õåëïåðà"); Kick(i); return 1; } } else { SendClientMessage(i, COLOR_RED, "***{FFFFFF}Âû êèêíóòó çà ïîïûòêó óãîíà àêêàóíòà àäìèíèñòðàòîðà/õåëïåðà"); Kick(i); return 1; } } SetPlayerScore(i, PlayerInfo[i][pLevel]); gPlayerLogged[i] = 1; SetPVarInt(i, "Logged", 1); SendClientMessage(i, COLOR_YELLOW, "***{FFFFFF}Âû óñïåøíî ïîäêëþ÷èëèñü ê ñåðâåðó"); if(PlayerInfo[i][pMuteTime] > 0) PlayerInfo[i][pMute] = 1; if(PlayerInfo[i][pFMuteTime] > 0) PlayerInfo[i][pFMute] = 1; PlayerInfo[i][pStatConnect] = 1; if(PlayerInfo[i][pHelper] == 0 && PlayerInfo[i][pAdmin] == 0) { SpawnPlayer(i); } return 1; }
Я думаю, что иероглифы не помешают, так скопировалось
|
| |
|
|
| Weddew | Дата: Вторник, 11.06.2013, 22:51 | Сообщение # 994 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Cruiser, для получения int из ячейки, используйте cache_get_field_content_int. Пример: [pwn]PlayerInfo[i ][pLevel] = cache_get_field_content_int(0, "Level");[/pwn] Для float используйте cache_get_field_content_float.
Также советую не использовать callback чтения данных из БД в других целях (авторизация, регистрация и т.д.)
www.weddew-shop.ru
Сообщение отредактировал Weddew - Вторник, 11.06.2013, 22:51 |
| |
|
|
| Cruiser | Дата: Вторник, 11.06.2013, 23:45 | Сообщение # 995 |
|
Новенький
Группа:
Пользователи
Сообщений: 25
Награды: 0
Город: Армавир
Репутация: 0
Замечания: 0%
Статус: 
| Weddew, Это уже как я понимаю начинается с R8? Потому что у меня щас R7. Добавлено (11.06.2013, 23:45) --------------------------------------------- И еще возник сразу вопрос, вот есть stock сохранения акк. и там надо оочень большие строки я их разбаил на несколько т.е. выглядит примерно вот так: format(string, sizeof(string), "") mysql_function_query(connectMySQL, string, false, "", "");
и string = 1000(new string[1000]) И таких запросов на сохранение 5, это нормально? потому что пробовал делать все одним ну уж очень большой стринг надо делать тогда и сервер бывало выключался именно из за этого(выход за пределы было). Или есть какие то альтернативы этому всему?
|
| |
|
|
| Weddew | Дата: Среда, 12.06.2013, 00:03 | Сообщение # 996 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Cruiser, 5 запросов нормально в том случае, если сохранение не слишком частое.
www.weddew-shop.ru
|
| |
|
|
| Geryy | Дата: Среда, 12.06.2013, 01:49 | Сообщение # 997 |
|
Советчик
Группа:
Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус: 
| Цитата (Saibot) Я хотел зделать так чтобы когда на ДМ-Зоне игрок убивал последнего игрока зона закрывалась.Но не получаеться. Как и в предыдущий раз, чтобы сделать нужен мод. Выложенных кусков кода не достаточно.
Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
|
| |
|
|
| kap9822 | Дата: Среда, 12.06.2013, 12:58 | Сообщение # 998 |
|
Новенький
Группа:
Пользователи
Сообщений: 2
Награды: 0
Репутация: 0
Замечания: 0%
Статус: 
| Не помогло.И удалял ники,и чистил весь cfg.Когда почистил ники,дома остались купленными.Когда почистил файл,сервер перестал работать...
|
| |
|
|
| Weddew | Дата: Среда, 12.06.2013, 13:39 | Сообщение # 999 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| kap9822, экстрасенсы в отпуске. Архив мода в студию. [x2]
www.weddew-shop.ru
|
| |
|
|
| Geryy | Дата: Среда, 12.06.2013, 15:45 | Сообщение # 1000 |
|
Советчик
Группа:
Ангел Хранитель
Сообщений: 1187
Награды: 24
Город: Москва
Репутация: 785
Замечания: 0%
Статус: 
| Цитата (Weddew) экстрасенсы в отпуске. Архив мода в студию. Может не хочет распространять свой авторский мод
kap9822, Открой мод в редакторе и поищи админскую команду по продаже домов.
Добавить SAMP сервер в спец. вкладку HOSTED 450-500 р.
|
| |
|
|
| Weddew | Дата: Среда, 12.06.2013, 16:12 | Сообщение # 1001 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Цитата (Geryy) Может не хочет распространять свой авторский мод Если не хочет, то пусть хотя бы скажет основу мода. P.S.: Цитата (Weddew) Задавайте вопросы исключительно по коду, а не по системам, которые имеются у Вас в моде. kap9822, если мод GF подобный, то в файле домов в строках Код 1,.....,Nick_Name,...... для продажи дома необходимо 1 изменить на 0, а Nick_Name на The State.
www.weddew-shop.ru
|
| |
|
|
| Merbul | Дата: Среда, 12.06.2013, 18:48 | Сообщение # 1002 |
|
Новенький
Группа:
Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус: 
| Здарова всем Помогите исправить баг когда в сервере кого-то убиваешь кикает игрока... Как можно исправить?
|
| |
|
|
| DemonoloG | Дата: Среда, 12.06.2013, 20:14 | Сообщение # 1003 |
|
Постоялец
Группа:
Продвинутые
Сообщений: 314
Награды: 2
Репутация: 178
Замечания: 0%
Статус: 
| Merbul, с любого оружия или с конкретного?
|
| |
|
|
| Merbul | Дата: Среда, 12.06.2013, 22:27 | Сообщение # 1004 |
|
Новенький
Группа:
Пользователи
Сообщений: 71
Награды: 0
Репутация: -28
Замечания: 0%
Статус: 
| Да хоть с какого главно умераешь и тебя какает..
|
| |
|
|
| Weddew | Дата: Среда, 12.06.2013, 23:13 | Сообщение # 1005 |
|
Группа:
Ангел Хранитель
Сообщений: 1251
Награды: 19
Город: Казань
Репутация: 1740
Замечания: 0%
Статус: 
| Merbul, В public OnPlayerDeath(playerid, killerid, reason) найти и удалить: Если кикает игрока, который убил другого игрока: [pwn]Kick(killerid);[/pwn] Если кикает игрока, которого убил другой игрок: [pwn]Kick(playerid);[/pwn]
www.weddew-shop.ru
Сообщение отредактировал Weddew - Среда, 12.06.2013, 23:14 |
| |
|
|
|
 |
|
 | |
| |
|