 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
Помощь по GTA SAMP (Первая база знаний)
| |
| HauS | Дата: Понедельник, 19.07.2010, 20:19 | Сообщение # 7756 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 210
Награды: 4
Город: Бухалово (Тверская область, Бологовский р-н)
Репутация: 66
Замечания: 60%
Статус: 
| Quote (Manok) Quote (roman040494) У меня возник вопрос. Как сделать регенерацию хп у игроков. Например: регенерация у игрока долна быть со 2 лвл. 2 лвл - 0.100хп 3лвл чуть побольше гдето 0. 120хп и тд. Помогите пожалуйста мне создать такой скрипт или сделать сразу в мод Так-с. Сейчас придумаем. Для начала сделаем проверку в OnPlayerUpdate на уровень игрока. (С GF и подобными модами не сильно знаком, допустим level это параметр уровня на сервере). Т.е. if(level > 1) { (примерно). Далее. Можно делать по уровню, то есть узнавая, какой уровень игрока(level == 1, level == 2, и т.д.). Но можно сделать и по-другому, т.е. сделать что-то типо этого: "new float:RegenHP; GetPlayerHealth(playerid, RegenHP);, а потом сделать проверку на само хп, требуется ли человеку регенерация ( "if(RegenHP >= 100) { return 1; }" )- т.е. если у игрока 100хп, или больше, то регенерировать его не будет. А далее уже по сравнению уровня делаем таймер, допустим каждую минуту, и уже после завершения таймера делаем SetPlayerHealth(playerid, RegenHP+1.2);(допустим). Если не хочешь делать по сравнению уровня, то делай по нескольким уровням, то есть, если человек > 1 уровня, то +1.2хп, если человек >3 лвл, то +3.6хп и так далее. Впринципе, думаю объяснил, если есть ошибки в примерах/коде извините. Если есть какие-то вопросы задавай тут(хотя я тут редко), либо в ICQ. Добавлено (16.07.2010, 20:31) --------------------------------------------- Quote (maximus-vrn) Stels, мод grandlarc. Нужно добавить туда оружие. Дай код покупки оружия в оружейном магазине.(Например /buygun). Впринципе это не трудно, но не видя код, я не могу объяснить как :) Роман тебе уже отвечали. Впринципе Manok прав, однако он видимо ступил насчет OnPlayerUpdate А то каждую секунду создавался бы таймер
|
| |
|
|
| roman040494 | Дата: Понедельник, 19.07.2010, 20:22 | Сообщение # 7757 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 81
Награды: 0
Город: Екатеринбург
Репутация: -17
Замечания: 20%
Статус: 
| HauS, даг я незнаю как это всё чо куда вписывать я ещо нуб в павно может ты мне чем поможешь
sa-mp server public enemy №1 ip: game-arena.sytes.net:5555
|
| |
|
|
| HauS | Дата: Понедельник, 19.07.2010, 21:13 | Сообщение # 7758 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 210
Награды: 4
Город: Бухалово (Тверская область, Бологовский р-н)
Репутация: 66
Замечания: 60%
Статус: 
| Блин, проверил свой скрипт. У меня охинея какая-то, по обратному отсчету сначало убирается 1 сек, потом 2 сек, потом 3 сек, потом 4 сек и т.д. Т.е. 60 - 59 - 57 - 54 - 50 - 45 и т.д. Не подскажет никто в чем может быть суть? Юзал в удалении только ii --;
|
| |
|
|
| stepmex | Дата: Понедельник, 19.07.2010, 21:24 | Сообщение # 7759 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (HauS) У меня охинея какая-то, по обратному отсчету сначало убирается 1 сек, потом 2 сек, потом 3 сек, потом 4 сек и т.д. телепаты в отпуске! roman040494, Code public OnPlayerSpawn(playerid) { SetTimerEx("HPUP", 1000, true); return 1; }
public HPUP() { for(new playerid,Float:HP;playerid < MAX_PLAYERS;PLAYERID++) { if(!IsPlayerConnected(playerid) || IsPlayerNPC(playerid))continue; GetPlayerHealth(playerid,HP); if(HP<100.0) { switch(PlayerInfo[playerid][pLevel]) { case 1:HP += 0.2; case 2:HP += 0.4; case 3:HP += 0.6; } SetPlayerHealth(playerid,HP); } else SetPlayerHealth(playerid,100.0); } }
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
| HauS | Дата: Понедельник, 19.07.2010, 21:29 | Сообщение # 7760 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 210
Награды: 4
Город: Бухалово (Тверская область, Бологовский р-н)
Репутация: 66
Замечания: 60%
Статус: 
| Степ забыл.. Вообщем, начал делать после того как у меня не заработало, по твоему примеру... И опять эта же охинея. Она меня преследует. http://www.everfall.com/paste/id.php?8k9835hl1rex
|
| |
|
|
| stepmex | Дата: Понедельник, 19.07.2010, 21:47 | Сообщение # 7761 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Я тебе написал рабочий код, нафига ты туда пихаешь свою самопалку, если совсем не понимешь что ты делаешь?!
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
| themrsnk | Дата: Вторник, 20.07.2010, 02:25 | Сообщение # 7762 |
|
themrsnk
Группа:
I'm V.I.P.
Сообщений: 609
Награды: 14
Город: Челябинск
Репутация: 758
Замечания: 0%
Статус: 
| Подскажите,пожалуйста,как удалить определённую строчку из файла.
[INC] vehicle_fun (0.3c only) [GM] tRPG (0.3c only) [ADDON] Samp spamer colorgen
|
| |
|
|
| tuko | Дата: Вторник, 20.07.2010, 03:44 | Сообщение # 7763 |
|
Новенький
Группа:
Пользователи
Сообщений: 15
Награды: 0
Город: Липецк
Репутация: 0
Замечания: 0%
Статус: 
| столкнулся с проблемкой. на ГФ моде когда пишешь в /d депортамент чат выдаёт сразу 2 сообщения вместо одного. помогите найти ошибку или исправить её. вот код. [cut noguest=Смотри код] if(strcmp(cmd, "/departments", true) == 0 || strcmp(cmd, "/d", true) == 0) { if(IsPlayerConnected(playerid)) { GetPlayerName(playerid, sendername, sizeof(sendername)); new length = strlen(cmdtext); while ((idx < length) && (cmdtext[idx] <= ' ')) { idx++; } new offset = idx; new result[64]; while ((idx < length) && ((idx - offset) < (sizeof(result) - 1))) { result[idx - offset] = cmdtext[idx]; idx++; } result[idx - offset] = EOS; if(!strlen(result)) { SendClientMessage(playerid, COLOR_GRAD2, "Ïîäñêàçêà: (/d)epartments [department chat]"); return 1; } if(PlayerInfo[playerid][pMuted] == 1) { SendClientMessage(playerid, TEAM_CYAN_COLOR, "Âû íå ìîæåòå ãîâîðèòü!"); return 0; } if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1) { if(PlayerInfo[playerid][pRank] == 8) { format(string, sizeof(string), "** Øåô %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 7) { format(string, sizeof(string), "** Çàì Øåô %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 6) { format(string, sizeof(string), "** Êàïèòàí %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 5) { format(string, sizeof(string), "** Ëåéòåíàíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 4) { format(string, sizeof(string), "** Ñåðæàíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 3) { format(string, sizeof(string), "** Êîïðàë %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 2) { format(string, sizeof(string), "** Îôèöåð %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 1) { format(string, sizeof(string), "** Êàäåò %s: %s, over. **", sendername, result); } else { format(string, sizeof(string), "** Êàäåò %s: %s, over. **", sendername, result); } SendTeamMessage(2, COLOR_ALLDEPT, string); SendTeamMessage(1, COLOR_ALLDEPT, string); SendFamilyMessage(7, COLOR_ALLDEPT, string); printf("%s", string); return 1; } else if(PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pLeader] == 2) { if(PlayerInfo[playerid][pRank] == 6) { format(string, sizeof(string), "** Äèðåêòîð %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 5) { format(string, sizeof(string), "** Çàì äèðåêòîð %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 4) { format(string, sizeof(string), "** Ñïåö àãåíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 3) { format(string, sizeof(string), "** Ñïåö àãåíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 2) { format(string, sizeof(string), "** Îáó÷àþùèéñÿ ñïåö àãåíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 1) { format(string, sizeof(string), "** Íà÷èíàþùèé %s: %s, over. **", sendername, result); } else { format(string, sizeof(string), "** Íà÷èíàþùèé %s: %s, over. **", sendername, result); } SendTeamMessage(2, COLOR_ALLDEPT, string); SendTeamMessage(1, COLOR_ALLDEPT, string); SendFamilyMessage(7, COLOR_ALLDEPT, string); printf("%s", string); return 1; } else if(PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 3) { if(PlayerInfo[playerid][pRank] == 6) { format(string, sizeof(string), "** Ãåíåðàë %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 5) { format(string, sizeof(string), "** Ëåéòåíàíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 4) { format(string, sizeof(string), "** Êàïèòàí %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 3) { format(string, sizeof(string), "** Ìàéîð %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 2) { format(string, sizeof(string), "** Ñåðæàíò %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 1) { format(string, sizeof(string), "** Íîâîáðàíåö %s: %s, over. **", sendername, result); } else { format(string, sizeof(string), "** Íîâîáðàíåö %s: %s, over. **", sendername, result); } SendTeamMessage(2, COLOR_ALLDEPT, string); SendTeamMessage(1, COLOR_ALLDEPT, string); SendFamilyMessage(7, COLOR_ALLDEPT, string); printf("%s", string); return 1; } else if(gTeam[playerid] == 1||PlayerInfo[playerid][pMember]==4||PlayerInfo[playerid][pLeader]==4) { format(string, sizeof(string), "** Paramedic %s: %s, over. **", sendername, result); SendTeamMessage(2, COLOR_ALLDEPT, string); SendTeamMessage(1, COLOR_ALLDEPT, string); SendFamilyMessage(7, COLOR_ALLDEPT, string); printf("%s", string); return 1; } else if(PlayerInfo[playerid][pLeader] == 7||PlayerInfo[playerid][pMember] == 7) { if(PlayerInfo[playerid][pRank] == 6) { format(string, sizeof(string), "** Mayor %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 2) { format(string, sizeof(string), "** Mayor's bodyguard %s: %s, over. **", sendername, result); } else if(PlayerInfo[playerid][pRank] == 1) { format(string, sizeof(string), "** Mayor's driver %s: %s, over. **", sendername, result); } else { SendClientMessage(playerid, COLOR_GREY, " Mayor hasn't given you a radio to speak in"); return 1; } SendTeamMessage(2, COLOR_ALLDEPT, string); SendTeamMessage(1, COLOR_ALLDEPT, string); SendFamilyMessage(7, COLOR_ALLDEPT, string); printf("%s", string); return 1; } else { SendClientMessage(playerid, COLOR_GRAD2, " Âû íå â ñèë. ñòðóêòóðàõ !"); return 1; } } return 1; }[/cut]
X-ZoneGame Role Play: IP Address: 93.183.194.230:3405 Cайт проекта:http://www.x-zonegame.ru/ Группа VK:http://vkontakte.ru/club19248243 Информация: Молодой и многообещающий проeкт посвященный игре покорившей тысячи сердец пользователей интернет паутины SA:MP. мод сервера: Мод сервера базируется на сборке VineWood переделанной под Godfather администрацией сервера. Основной уклон сервера делается на РП. Банды живут на своих районах. Мафии ведут криминальную жизнь и окутывают Штат Сан Андрерас криминальной паутиной которую в свою очередь разгребают силовые структуры такие как F.B.I,National Guards,SAPD перестрелки,гангстеры,мафии,медики,Наемные убийцы и многое другое на проекте XZG. Почувствуй себя в роли одних из героев Штата Сан Андрерас
|
| |
|
|
| roman040494 | Дата: Вторник, 20.07.2010, 11:14 | Сообщение # 7764 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 81
Награды: 0
Город: Екатеринбург
Репутация: -17
Замечания: 20%
Статус: 
| stepmex, У меня вот такие ошибки Quote C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(2541) : warning 235: public function lacks forward declaration (symbol "HPUP") C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(2543) : error 017: undefined symbol "PLAYERID" C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(2581) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(2630) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(2664) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(2718) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(3182) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(3458) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(3525) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(3796) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(3857) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(3864) : warning 219: local variable "i" shadows a variable at a preceding level C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4142) : warning 202: number of arguments does not match definition C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4146) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4148) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4152) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4155) : error 054: unmatched closing brace ("}") C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4156) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4158) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4160) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4161) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4166) : error 021: symbol already defined: "SetPlayerInterior" C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4169) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4171) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4176) : error 021: symbol already defined: "SetPlayerInterior" C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4179) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4182) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4185) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4189) : error 021: symbol already defined: "SetPlayerRandomSpawn" C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4201) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4205) : error 021: symbol already defined: "SetPlayerRandomSpawn" C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4208) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4225) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4232) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4233) : error 021: symbol already defined: "SetPlayerRandomSpawn" C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4234) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4236) : error 010: invalid function or declaration C:\Documents and Settings\Роман\Рабочий стол\Сервер\gamemodes\penls.pwn(4242) : error 010: invalid function or declaration Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 26 Errors.
sa-mp server public enemy №1 ip: game-arena.sytes.net:5555
|
| |
|
|
| HauS | Дата: Вторник, 20.07.2010, 13:37 | Сообщение # 7765 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 210
Награды: 4
Город: Бухалово (Тверская область, Бологовский р-н)
Репутация: 66
Замечания: 60%
Статус: 
| Quote (stepmex) Я тебе написал рабочий код, нафига ты туда пихаешь свою самопалку, если совсем не понимешь что ты делаешь?! Он рабочий, да. Но мне надо для одного игрока, а не для всех. Твой код показывает всем Помоги пожалуйста.
|
| |
|
|
| stepmex | Дата: Вторник, 20.07.2010, 13:41 | Сообщение # 7766 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (HauS) Но мне надо для одного игрока, а не для всех. добавь проверку для кого показывать и все, вот сюда: if(!IsPlayerConnected(playerid) || IsPlayerNPC(playerid))continue; <------ if(если игрок не тот кто надо)continue; GetPlayerHealth(playerid,HP);
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
| HauS | Дата: Вторник, 20.07.2010, 14:01 | Сообщение # 7767 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 210
Награды: 4
Город: Бухалово (Тверская область, Бологовский р-н)
Репутация: 66
Замечания: 60%
Статус: 
| Quote (stepmex) добавь проверку для кого показывать и все, вот сюда: if(!IsPlayerConnected(playerid) || IsPlayerNPC(playerid))continue; <------ if(если игрок не тот кто надо)continue; GetPlayerHealth(playerid,HP); Причем тут getplayerhealth. Как указать что если игрок не тот кто надо? Просто мне надо это все дело оформить как обучение, я оформил но показывает всем.. Можно сам if? Просто не получается
|
| |
|
|
| stepmex | Дата: Вторник, 20.07.2010, 14:04 | Сообщение # 7768 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Не тот код скопировал Есть какая-нибудь переменная в моде в которой храниться инфа кому показывать, а кому нет?
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Сообщение отредактировал stepmex - Вторник, 20.07.2010, 14:04 |
| |
|
|
| HauS | Дата: Вторник, 20.07.2010, 14:12 | Сообщение # 7769 |
|
Уверенный в себе
Группа:
Продвинутые
Сообщений: 210
Награды: 4
Город: Бухалово (Тверская область, Бологовский р-н)
Репутация: 66
Замечания: 60%
Статус: 
| stepmex Вроде нет. Но что если сделать на пороге обучения, добавить переменную IsIdiot = 1; , и потом проверку сделать на Count'e? А потом как обучение заканчивается IsIdiot = 0; Так будет работать?Добавлено (20.07.2010, 14:12) --------------------------------------------- И еще у меня идет проверка на count уже в диалоговом респонсе. count неизвестный символ там) Как мне его обозначить?
|
| |
|
|
| stepmex | Дата: Вторник, 20.07.2010, 14:12 | Сообщение # 7770 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| А если обучаться будут сразу 2 человека?
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
|
 |
|
 | |
| |
|