|
Вопрос | Ответ
|
|
| RudeBoy | Дата: Пятница, 30.03.2012, 22:50 | Сообщение # 3991 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| у меня проблема имеется, кто поможет +
у меня остался стандартный колбэк (хотел уже давно удалить но не могу)
public OnPlayerUpdate(playerid) { PlayerAFK[playerid][AFK_Time] = 0; if(PlayerAFK[playerid][AFK_Stat] != 0) { Delete3DTextLabel(AFK_3DT[playerid]); PlayerAFK[playerid][AFK_Stat] = 0; } return 1; }
я хочу его удалить, есть мнение что от него будет лучше.
так вот, если допустим я беру и тупо переименовываю его в
public OnPlayerGetGet(playerid) { PlayerAFK[playerid][AFK_Time] = 0; if(PlayerAFK[playerid][AFK_Stat] != 0) { Delete3DTextLabel(AFK_3DT[playerid]); PlayerAFK[playerid][AFK_Stat] = 0; } return 1; } и делаю forward OnPlayerGetGet(playerid);
- всё вроде как работает, но есть большое но.. если человек просто стоит на месте секунд 5 то включается афк надпись (без паузы он при этом стоит) если он пошевелится то надпись уберется.. постоит также 5 сек и опять включится.. со стандартным колбэком public OnPlayerUpdate такого не было.. наверное в нем заложены функции распознавания какие-то каких нет у просто переименованного.
есть советы что делать?
|
| |
|
|
| Eakwarp | Дата: Пятница, 30.03.2012, 23:00 | Сообщение # 3992 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус: 
| RudeBoy, боже мой, вы вообще понимаете, что такое каллбэк? OnPlayerUpdate инициируется сервером, когда от игрока поступают данные на сервер. Вот вы его переименовали, добавили форвард, и как по вашему он теперь будет вызываться?
More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.
Valakas Roleplay on Twitter
Платные консультации, разработка, в ICQ. Дорого.
|
| |
|
|
| RudeBoy | Дата: Пятница, 30.03.2012, 23:26 | Сообщение # 3993 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| Quote (Eakwarp) RudeBoy, боже мой, вы вообще понимаете, что такое каллбэк? OnPlayerUpdate инициируется сервером, когда от игрока поступают данные на сервер. Вот вы его переименовали, добавили форвард, и как по вашему он теперь будет вызываться?
я могу отличить их))) бывает путаю значения, ну есть идеи? или не стоит его тогда удалять?Добавлено (30.03.2012, 23:24) --------------------------------------------- я бы хотел чтобы он вызывался не так часто.. Добавлено (30.03.2012, 23:25) --------------------------------------------- хотя бы у стандартного OnPlayerUpdate можно как-то уменьшить такты? Добавлено (30.03.2012, 23:26) --------------------------------------------- допустим на 2 секунды поставить его не знаю..
|
| |
|
|
| Eakwarp | Дата: Пятница, 30.03.2012, 23:26 | Сообщение # 3994 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус: 
| Quote (RudeBoy) хотя бы у стандартного OnPlayerUpdate можно как-то уменьшить такты? Нет нельзя.
More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.
Valakas Roleplay on Twitter
Платные консультации, разработка, в ICQ. Дорого.
|
| |
|
|
| RudeBoy | Дата: Суббота, 31.03.2012, 02:25 | Сообщение # 3995 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| тогда такой вопрос, можно ли кроме него где-то еще использовать данную проверку? чтобы она правильно работала
PlayerAFK[playerid][AFK_Time] = 0; if(PlayerAFK[playerid][AFK_Stat] != 0) { Delete3DTextLabel(AFK_3DT[playerid]); PlayerAFK[playerid][AFK_Stat] = 0; }
если да то где? или можно хотя бы переименовать его снова и вставить туда ту функцию которую ему не хватает для стабильной работы на проверку афк и сделать по таймеру? если да то чего ему не хватает где это можно достать?
еще вопрос, у меня весь транспорт (около 1800) в формате
AddStaticVehicleEx(439,-1724.8844,-138.9549,3.2636,12.4840,-1,-1,900);
я пытаюсь как-то всё сбалансировать и как лучше всего использовать транспорт убавлять таймер для респавна или применять эту лучше
AddStaticVehicle ? Я боюсь что множество таймеров лишнее для сервера, учитывая тот факт что читеры могут собейтом перемещаться по всем машинам тем самым активировать их у каждой AddStaticVehicleEx
|
| |
|
|
| Borog | Дата: Суббота, 31.03.2012, 02:41 | Сообщение # 3996 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус: 
| RudeBoy, Суть твоего АФК и заключается в вызывах к функции OnPlayerUpdate. Чего тебе приспичило ее удалить?
"Таймер для респавна" и SetTimer - разные вещи со значительно разной нагрузкой. Это не то, где нужно балансировать оптимизировать
Silver Break http://s-break.ru/ http://vk.com/sbreak
|
| |
|
|
| RudeBoy | Дата: Понедельник, 02.04.2012, 07:59 | Сообщение # 3997 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| ладно на счет афк вроде не мешает тогда.
кто хочет стучитесь в аську, требуется максимальная и верная оптимизация public SetPlayerUnjail() оплата 200р готов платить по мелочи за разные оптимизации стучитесь кому надо.Добавлено (01.04.2012, 01:23) --------------------------------------------- вопрос появился.
с чем связана рассинхронизация например когда человек садится в машину на пассажирское место... и кто-то тоже садится то он садится в него же на его место, первый человек вылетает из машины и ему приходится снова сесть но уже на другое место, дело в хосте или надо что-то подправлять? Добавлено (02.04.2012, 07:59) --------------------------------------------- вопрос
Code return true - будет быстрее чем return 1; так же как и return false и return 0;
это правда???
|
| |
|
|
| Eakwarp | Дата: Понедельник, 02.04.2012, 13:44 | Сообщение # 3998 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус: 
| Quote (RudeBoy) это правда??? Нет.
More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.
Valakas Roleplay on Twitter
Платные консультации, разработка, в ICQ. Дорого.
|
| |
|
|
| RudeBoy | Дата: Понедельник, 02.04.2012, 15:15 | Сообщение # 3999 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| как правильно применить switch в данном случае
Code if(PlayerInfo[targetid][pFMember] < 255) { if(PlayerInfo[targetid][pRank] == 1) { rtext = "Outsider"; } else if(PlayerInfo[targetid][pRank] == 2) { rtext = "Associate"; } else if(PlayerInfo[targetid][pRank] == 3) { rtext = "Soldier"; } else if(PlayerInfo[targetid][pRank] == 4) { rtext = "Capo"; } else if(PlayerInfo[targetid][pRank] == 5) { rtext = "Underboss"; } else if(PlayerInfo[targetid][pRank] == 6) { rtext = "Godfather"; } else { rtext = "Godfather"; } }
в статистике /stats (диалог) функция должна найти ранг именно из стока а не из себя.
Code stock GetVAGRank(playerid) { new rank[12]; switch(PlayerInfo[playerid][pRank]) { case 6:rank = "Àâòîðèòåò"; case 5:rank = "Ãàíãñòåð"; case 4:rank = "Îïàñíûé"; case 3:rank = "Ïàòðèîò"; case 2:rank = "Äîâåðåííûé"; case 1:rank = "Ìåñòíûé"; default:rank = "Ìåñòíûé"; } return rank; } Добавлено (02.04.2012, 14:58) --------------------------------------------- стринг пытаюсь оптимизировать (нужно мне) Добавлено (02.04.2012, 15:15) --------------------------------------------- долго помогаете, я уже сам додумался без вас
Code if(PlayerInfo[targetid][pRank]) { rtext = GetVAGRank(playerid); }
|
| |
|
|
| Exclus1ve | Дата: Среда, 04.04.2012, 16:27 | Сообщение # 4000 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 141
Награды: 4
Город: Санкт-Петербург
Репутация: 330
Замечания: 40%
Статус: 
| Quote (RudeBoy) это правда???
Нет, не правда.
node.js
Сообщение отредактировал Exclus1ve - Среда, 04.04.2012, 17:37 |
| |
|
|
| Eakwarp | Дата: Среда, 04.04.2012, 16:35 | Сообщение # 4001 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус: 
| Quote (Exclus1ve) Да, это правда, проверялось. Совсем скурились? Это павн.
More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.
Valakas Roleplay on Twitter
Платные консультации, разработка, в ICQ. Дорого.
|
| |
|
|
| Exclus1ve | Дата: Среда, 04.04.2012, 17:33 | Сообщение # 4002 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 141
Награды: 4
Город: Санкт-Петербург
Репутация: 330
Замечания: 40%
Статус: 
| Quote (Eakwarp) Совсем скурились? Это павн.
Проверил, действительно, в павн это просто макрос значит. Скорость одинакова.
Кто-то поднимал помню вопрос на са-мп.коме, и кто-то говорил что работает быстрее, ну ладно, значит неверно.
node.js
Сообщение отредактировал Exclus1ve - Среда, 04.04.2012, 17:36 |
| |
|
|
| RudeBoy | Дата: Понедельник, 09.04.2012, 09:10 | Сообщение # 4003 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 113
Награды: 1
Город: Киев
Репутация: -28
Замечания: 0%
Статус: 
| можно ли контролировать стандартные подсказки из синглплеера? которые в начале игры вылазиют - нажмите такую то кнопку для того-то и т.д.. ? если да то какой функцией?
также, можно ли контролировать стандартное уважение и тоже какой функцией?
и есть ли функция проверки воздуха под водой? (хочу сделать чтобы кончалось)
|
| |
|
|
| McSeT | Дата: Понедельник, 09.04.2012, 16:48 | Сообщение # 4004 |
|
Освоившийся
Группа:
Продвинутые
Сообщений: 141
Награды: 0
Город: Где?
Репутация: -11
Замечания: 20%
Статус: 
| Как сделать команду чтобы проверять какая у кого лидерка если хоть игрок не в игре, тоесть я дал лидерку кому нибудь, и он вышел, я вел например команду: /leaderlist и там показывала у кого какая лидерка если даже игроки не в игре, сис-ма MXINI
|
| |
|
|
| Eakwarp | Дата: Понедельник, 09.04.2012, 16:51 | Сообщение # 4005 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 4874
Награды: 179
Город: Москва
Репутация: 2543
Замечания: 60%
Статус: 
| Quote (RudeBoy) можно ли контролировать стандартные подсказки из синглплеера? которые в начале игры вылазиют - нажмите такую то кнопку для того-то и т.д.. ? если да то какой функцией? Можно сделать это посредством текстдравов. Quote (RudeBoy) также, можно ли контролировать стандартное уважение и тоже какой функцией? и есть ли функция проверки воздуха под водой? (хочу сделать чтобы кончалось) Нет и нет.
Quote (McSeT) Как сделать команду чтобы проверять какая у кого лидерка если хоть игрок не в игре, тоесть я дал лидерку кому нибудь, и он вышел, я вел например команду: /leaderlist и там показывала у кого какая лидерка если даже игроки не в игре, сис-ма MXINI Например сохранять информацию о лидерках при их выдаче в отдельный файл, при использовании /leaderlist выводить информацию из этого файла.
More than 4 years of development, more than 250,000 lines of source code, more than a hundred units and more than 3400 revisions. Valakas Roleplay - choose your role.
Valakas Roleplay on Twitter
Платные консультации, разработка, в ICQ. Дорого.
|
| |
|
|