PEN на SA-MP 0.3
|
|
sSeRegA | Дата: Среда, 21.10.2009, 15:21 | Сообщение # 16 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 174
Награды: 6
Город: Рузаевка
Репутация: 43
Замечания: 60%
Статус:
| zTron, спасибо с миссией косяк исправил Добавлено (21.10.2009, 15:21) --------------------------------------------- Rabbit, с машинами я разобрался вот осталась тоько проблема со спавном
--------------------
http://maps.serverhex.com/
|
|
|
|
zTron | Дата: Среда, 21.10.2009, 15:29 | Сообщение # 17 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 186
Награды: 4
Город: Харьков
Репутация: 39
Замечания: 20%
Статус:
| Вот блин, спавн игрока заработало в фугитиве как положено и снова не понял почему... Неужели инклюды??? Или я совсем отупел и руки без участия мозга всё поисправляли???
109.86.185.7:7777 ..::TrSB::.. PEN1: S.A.
Сообщение отредактировал zTron - Среда, 21.10.2009, 15:47 |
|
|
|
sSeRegA | Дата: Среда, 21.10.2009, 15:38 | Сообщение # 18 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 174
Награды: 6
Город: Рузаевка
Репутация: 43
Замечания: 60%
Статус:
| zTron, попробовал сделать как ты не помогло
--------------------
http://maps.serverhex.com/
Сообщение отредактировал Serega14 - Среда, 21.10.2009, 15:43 |
|
|
|
zTron | Дата: Среда, 21.10.2009, 16:10 | Сообщение # 19 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 186
Награды: 4
Город: Харьков
Репутация: 39
Замечания: 20%
Статус:
| Тэээк-с, в public OnPlayerSpawn(playerid) приходит переменная gPlayerSpawned[playerid] со значением 1, публик думает что игрок уже воскресился и не вызывает public SetPlayerRandomSpawn Надо найти где обнулять (или не обнуляется) gPlayerSpawned[playerid] Добавлено (21.10.2009, 16:10) --------------------------------------------- Quote (Serega14) попробовал сделать как ты не помогло Слуууушай, а попробуй в public OnPlayerSpawn(playerid) вставить первой строчкой gPlayerSpawned[playerid] = 0;
109.86.185.7:7777 ..::TrSB::.. PEN1: S.A.
Сообщение отредактировал zTron - Среда, 21.10.2009, 16:12 |
|
|
|
Rabbit | Дата: Среда, 21.10.2009, 16:20 | Сообщение # 20 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 3
Город: Kiev
Репутация: 30
Замечания: 0%
Статус:
| zTron, Нет, проблема не в этом, потомучто в Сампе 0.2Х с этим проблем небыло а при компиляции в 0.3 врядли там что-то изминилось. При выполнении функции OnPlayerLogin функция gPlayerSpawned[playerid] обнуляеться... Думаю этот вариант не стоит разсматривать. Добавлено (21.10.2009, 16:20) --------------------------------------------- А вот есле насильно запихать в OnPlayerSpawn, gPlayerSpawned[playerid] = 0;, то спавн будет выполняться! только с небольшой задержечкой, значит при выполнении OnPlayerLogin, gPlayerSpawned[playerid] не обнуляеться! Теперь проясняеться что проблема в OnPlayerLogin... роюсь...
|
|
|
|
zTron | Дата: Среда, 21.10.2009, 16:22 | Сообщение # 21 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 186
Награды: 4
Город: Харьков
Репутация: 39
Замечания: 20%
Статус:
| А ты рассмотри! Как я не крутил в OnPlayerSpawn всегда приходит единица! Тупо вставил туда вышеозначенное и вроде,типа,как-бы заработало... Вот мой финальный вариант: public OnPlayerSpawn(playerid) { gPlayerSpawned[playerid] = 0; и так далее... } public SetPlayerRandomSpawn(playerid) { gPlayerSpawned[playerid] = 1; и так далее... }
109.86.185.7:7777 ..::TrSB::.. PEN1: S.A.
Сообщение отредактировал zTron - Среда, 21.10.2009, 16:36 |
|
|
|
Rabbit | Дата: Среда, 21.10.2009, 16:29 | Сообщение # 22 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 3
Город: Kiev
Репутация: 30
Замечания: 0%
Статус:
| Ну насильно пихать в OnPlayerSpawn gPlayerSpawned[playerid] = 0; - это абсурд, нужно найти изян, еденица даеться игроку тут: public OnPlayerStateChange(playerid, newstate, oldstate) if(newstate == PLAYER_STATE_SPAWNED) { ну она должна даваться уже после того как игрок отспавнился...
|
|
|
|
zTron | Дата: Среда, 21.10.2009, 16:38 | Сообщение # 23 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 186
Награды: 4
Город: Харьков
Репутация: 39
Замечания: 20%
Статус:
| Вот для этого и существуют форумы! Щас и в if(newstate == PLAYER_STATE_SPAWNED) сбегаю... Хотя... если вставить мой абсурд то всё спавнится и бегает по миссиям...
109.86.185.7:7777 ..::TrSB::.. PEN1: S.A.
Сообщение отредактировал zTron - Среда, 21.10.2009, 16:39 |
|
|
|
Rabbit | Дата: Среда, 21.10.2009, 17:09 | Сообщение # 24 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 3
Город: Kiev
Репутация: 30
Замечания: 0%
Статус:
| АААААААА!!!! Я нашел проблему!!!!!!! Глядите на принты!!! Принт из сампа 0.2Х Code OnPlayerSpawn Playerid:0 OnPlayerSpawnEND Playerid:0 OnPlayerStateChange 0 8 0 OnPlayerStateChange 0 1 8 Принт из сампа 0.3 Code OnPlayerStateChange 0 8 0 OnPlayerSpawn Playerid:0 OnPlayerSpawnEND Playerid:0 OnPlayerStateChange 0 1 8 Сечете последовательность действий?! 8 - это PLAYER_STATE_SPAWNED
|
|
|
|
sSeRegA | Дата: Среда, 21.10.2009, 17:20 | Сообщение # 25 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 174
Награды: 6
Город: Рузаевка
Репутация: 43
Замечания: 60%
Статус:
| Rabbit, ну несовсем поподробнее давай))
--------------------
http://maps.serverhex.com/
Сообщение отредактировал Serega14 - Среда, 21.10.2009, 17:22 |
|
|
|
Rabbit | Дата: Среда, 21.10.2009, 17:28 | Сообщение # 26 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 3
Город: Kiev
Репутация: 30
Замечания: 0%
Статус:
| Serega14, Прочти что раньше писали, OnPlayerStateChange(playerid, newstate, oldstate) игроку даеться gPlayerSpawned[playerid] = 1; а в OnPlayerSpawn идет проверка на условие if(gPlayerSpawned[playerid] == 0) то даеться нормальный спавн а точнее SetPlayerRandomSpawn.
|
|
|
|
sSeRegA | Дата: Среда, 21.10.2009, 17:35 | Сообщение # 27 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 174
Награды: 6
Город: Рузаевка
Репутация: 43
Замечания: 60%
Статус:
| Rabbit, ну это понятно)
--------------------
http://maps.serverhex.com/
Сообщение отредактировал Serega14 - Среда, 21.10.2009, 17:36 |
|
|
|
Relax | Дата: Среда, 21.10.2009, 18:49 | Сообщение # 28 |
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус:
| Quote (Rabbit) АААААААА!!!! Я нашел проблему!!!!!!! Глядите на принты!!! Принт из сампа 0.2Х Code OnPlayerSpawn Playerid:0 OnPlayerSpawnEND Playerid:0 OnPlayerStateChange 0 8 0 OnPlayerStateChange 0 1 8 Принт из сампа 0.3 Code OnPlayerStateChange 0 8 0 OnPlayerSpawn Playerid:0 OnPlayerSpawnEND Playerid:0 OnPlayerStateChange 0 1 8 Сечете последовательность действий?! 8 - это PLAYER_STATE_SPAWNED Здесь тоже не так всё просто, дело в том что в OnPlayerStateChange идёт проверка и в результате проверки пишет текст (если не зареген то....). Да уж задали нам работёнки разрабы
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
|
|
|
|
Rabbit | Дата: Среда, 21.10.2009, 18:59 | Сообщение # 29 |
Уверенный в себе
Группа:
Продвинутые
Сообщений: 260
Награды: 3
Город: Kiev
Репутация: 30
Замечания: 0%
Статус:
| Relax, Просто в 0.3 OnPlayerStateChange выполняеться первее чем OnPlayerSpawn. Тоесть gPlayerSpawned[playerid] = 1 нужно вынести из OnPlayerStateChange и внести в другое место, я внес в конец OnPlayerSpawn! Поробуй 100% поможет. Кстати, со спавном мишин "где попало" вы так разобрались? в CarInit() заменили c < 700; на c < MAX_VEHICLES; и в CarCheck() тоже самое?
Сообщение отредактировал Rabbit - Среда, 21.10.2009, 19:15 |
|
|
|
Relax | Дата: Среда, 21.10.2009, 19:19 | Сообщение # 30 |
Местный
Группа:
I'm V.I.P.
Сообщений: 686
Награды: 5
Город: Los Angeles
Репутация: 56
Замечания: 0%
Статус:
| Такс ладно с этим разобрались, что следуйщее на очереди?
Public Enemy: LS-SF-LV Developer && Public Enemy TDM Team Leader #TDM-Community
|
|
|
|