Re: Скриптинг курилка -
Eims - 15.03.2014
Quote:
Originally Posted by lost13
С Стоками тоже это проделать? Или только с пабликами?
|
Чем больше подобных меток по коду будет, тем подробнее будет информация о проблеме. Как найдёшь нужный паблик, пропринтуй его построчно (при каждом вызове функции отправляй сообщение в консоль) и опять жди вылета. Там уже увидишь точную строку с ошибкой.
Re: Скриптинг курилка -
lost13 - 15.03.2014
Quote:
Originally Posted by Eims
Чем больше подобных меток по коду будет, тем подробнее будет информация о проблеме. Как найдёшь нужный паблик, пропринтуй его построчно (при каждом вызове функции отправляй сообщение в консоль) и опять жди вылета. Там уже увидишь точную строку с ошибкой.
|
оу спасибо попробую! но чаще проблема такая, сервер не пишит/читает файлы или читает не те которые надо, например пароль от аккаунта можно ввести любой и загружается акк совершенно другого игрока! Видимо стоит на мускул переходить?
Re: Скриптинг курилка -
Optimus_Sprite - 15.03.2014
pawn Код:
new test[][] = {
{0,1,2,3,4,5,6,7,8,9},
{105,106,107}
};
в test[0] 10 элементов, а в test[1] 3 элемента, как узнать о количестве элементов без ручного счёта?
sizeof не очень помогает..
Re: Скриптинг курилка -
Jon_De - 15.03.2014
Quote:
Originally Posted by Optimus_Sprite
pawn Код:
new test[][] = { {0,1,2,3,4,5,6,7,8,9}, {105,106,107} };
в test[0] 10 элементов, а в test[1] 3 элемента, как узнать о количестве элементов без ручного счёта?
sizeof не очень помогает..
|
strlen
Re: Скриптинг курилка -
Optimus_Sprite - 15.03.2014
Quote:
Originally Posted by Jon_De
strlen
|
Проверил, увы нет.
Re: Скриптинг курилка -
DrumYum - 15.03.2014
Quote:
Originally Posted by Optimus_Sprite
pawn Код:
new test[][] = { {0,1,2,3,4,5,6,7,8,9}, {105,106,107} };
в test[0] 10 элементов, а в test[1] 3 элемента, как узнать о количестве элементов без ручного счёта?
sizeof не очень помогает..
|
Размер для всех подмассивов один, несмотря на то, сколько ячеек вы заполните. На деле второй подмассив выглядит как 105, 106, 107, 0, 0, 0, 0...
Т.е. ячеек в нём столько, сколько в первом.
Если я ничего не путаю.
DrumYum -
Stepashka - 15.03.2014
Quote:
Originally Posted by DrumYum
Размер для всех подмассивов один, несмотря на то, сколько ячеек вы заполните. На деле второй подмассив выглядит как 105, 106, 107, 0, 0, 0, 0...
Т.е. ячеек в нём столько, сколько в первом.
Если я ничего не путаю.
|
Вы не правы.
Quote:
Originally Posted by Optimus_Sprite
pawn Код:
new test[][] = { {0,1,2,3,4,5,6,7,8,9}, {105,106,107} };
в test[0] 10 элементов, а в test[1] 3 элемента, как узнать о количестве элементов без ручного счёта?
sizeof не очень помогает..
|
Автоматически узнать размер второго уровня ни как не получиться. В данном примере!
Re: Скриптинг курилка -
OKStyle - 15.03.2014
Quote:
Originally Posted by Stepashka
Только идиот будет держать сервер на 1000 человек на винде.
|
Необоснованно глупое заявление. К тому же, там никакой из unix-дистрибутивов сертификатом ФСТЭК или ФСБ не одарили?)))
Re: Скриптинг курилка -
Stepashka - 15.03.2014
Quote:
Originally Posted by OKStyle
Необоснованно глупое заявление. К тому же, там никакой из unix-дистрибутивов сертификатом ФСТЭК или ФСБ не одарили?)))
|
Ты такой правильный и без сертификатов не работаешь?!
Наверно ещё и весь софт на всех устройствах у тебя лицензионный.
Re: Скриптинг курилка -
Xotab - 15.03.2014
Доброго времени суток, товарищи, столкнулся с проблемой, все-таки перешел на YCMD, переводил сотни команд очень долгое время, не компилируя мод, после компиляции столкнулся с этим:
pawn Код:
new.pwn(13808) : warning 219: local variable "gplayerid" shadows a variable at a preceding level
new.pwn(13841) : warning 219: local variable "carid" shadows a variable at a preceding level
new.pwn(13913) : warning 219: local variable "string" shadows a variable at a preceding level
Команда создается по следующему шаблону:
pawn Код:
YCMD:command(playerid, params[]) // Примерный шаблон
{
new string[128],
gplayerid,
carid;
}
Глобальными переменными string, gplayerid и carid не являются, в чем может быть проблема?
Re: Скриптинг курилка -
DartfoL - 29.04.2014
Quote:
Какая нагрузка в том, чтобы обновить объект после создания?
|
Quote:
Данный вариант решения проблемы повлечёт за собой большую нагрузку на сервер.
|
противоречите сами себе
вообще, если юзать Streamer_Update в таком случае, то надо перебрать всех игроков в радиусе созданного объекта/3D текста и т.д. Но нужно ли оно?
Re: Скриптинг курилка -
XemyL - 29.04.2014
Quote:
Originally Posted by DartfoL
противоречите сами себе
|
Не выдумывай. Я говорил о двух совершенно разных функциях.
Quote:
Originally Posted by DartfoL
вообще, если юзать Streamer_Update в таком случае, то надо перебрать всех игроков в радиусе созданного объекта/3D текста и т.д. Но нужно ли оно?
|
Вот именно, зачем я должен это делать? Ведь это работа плагина. И что плохого в этом переборе? Плагин и так постоянно это делает. Одно лишнее обновление ничего не изменит.
Re: Скриптинг курилка -
k3dr - 01.05.2014
Подскажите, имеется ли функция Get в SetPlayerPosFindZ нужно узнать число.
Re: Скриптинг курилка -
Stepashka - 01.05.2014
Quote:
Originally Posted by k3dr
Подскажите, имеется ли функция Get в SetPlayerPosFindZ нужно узнать число.
|
Функции, нет, но что тебе мешает установить игрока средствами
SetPlayerPosFindZ, а потом стандартной функцией взять координату
z?
И вообще, вас что на вики забанили, или в инклуды тяжело заглянуть, там полный список функций?
Re: Скриптинг курилка -
k3dr - 01.05.2014
Quote:
Originally Posted by Stepashka
Функции, нет, но что тебе мешает установить игрока средствами SetPlayerPosFindZ, а потом стандартной функцией взять координату z?
И вообще, вас что на вики забанили, или в инклуды тяжело заглянуть, там полный список функций?
|
Я знаю, что ее нет
Re: Скриптинг курилка -
k3dr - 01.05.2014
Хорошо, функция игнорирует кастомные объекты ?
Re: Скриптинг курилка -
Stepashka - 01.05.2014
Quote:
Originally Posted by k3dr
Хорошо, функция игнорирует кастомные объекты ?
|
Ага.
Re: Скриптинг курилка -
lost13 - 01.05.2014
Приветствую. Что тут не так? Не работает вооообще
pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart){
new msg[20], Float:health;
GetPlayerHealth(playerid, health);
format(msg,sizeof(msg),"%d, %f",bodypart, health);
AMessage(msg,clRed);
switch(bodypart){
case 9: return SetPlayerHealth(playerid, health-=100); // Голова
case 3: return SetPlayerHealth(playerid, health-=50); // Тело
case 5: return SetPlayerHealth(playerid, health-=10); // Левая рука
case 6: return SetPlayerHealth(playerid, health-=10); // Правая рука
case 7: return SetPlayerHealth(playerid, health-=20); // Левая нога
case 8: return SetPlayerHealth(playerid, health-=20); // Правая нога
case 4: return SetPlayerHealth(playerid, health-=30);} // Пах
return 0;}
Re: Скриптинг курилка -
Stepashka - 01.05.2014
Quote:
Originally Posted by lost13
Приветствую. Что тут не так? Не работает вооообще
pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart){ new msg[20], Float:health; GetPlayerHealth(playerid, health); format(msg,sizeof(msg),"%d, %f",bodypart, health); AMessage(msg,clRed); switch(bodypart){ case 9: return SetPlayerHealth(playerid, health-=100); // Голова case 3: return SetPlayerHealth(playerid, health-=50); // Тело case 5: return SetPlayerHealth(playerid, health-=10); // Левая рука case 6: return SetPlayerHealth(playerid, health-=10); // Правая рука case 7: return SetPlayerHealth(playerid, health-=20); // Левая нога case 8: return SetPlayerHealth(playerid, health-=20); // Правая нога case 4: return SetPlayerHealth(playerid, health-=30);} // Пах return 0;}
|
Может быть из-за
return SetPlayerHealth
Quote:
This function does not return any specific values.
|
И пункты 5,6 и 7,8 можно объединить.
Re: Скриптинг курилка -
ea8de1 - 02.05.2014
Quote:
Originally Posted by lost13
Приветствую. Что тут не так? Не работает вооообще
pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid, bodypart){ new msg[20], Float:health; GetPlayerHealth(playerid, health); format(msg,sizeof(msg),"%d, %f",bodypart, health); AMessage(msg,clRed); switch(bodypart){ case 9: return SetPlayerHealth(playerid, health-=100); // Голова case 3: return SetPlayerHealth(playerid, health-=50); // Тело case 5: return SetPlayerHealth(playerid, health-=10); // Левая рука case 6: return SetPlayerHealth(playerid, health-=10); // Правая рука case 7: return SetPlayerHealth(playerid, health-=20); // Левая нога case 8: return SetPlayerHealth(playerid, health-=20); // Правая нога case 4: return SetPlayerHealth(playerid, health-=30);} // Пах return 0;}
|
Попробуйте убрать знаки
равно:
Код:
case 9: return SetPlayerHealth(playerid, health-=100); // Голова