Скриптинг курилка

Quote:
Originally Posted by lost13
Посмотреть сообщение
С Стоками тоже это проделать? Или только с пабликами?
Чем больше подобных меток по коду будет, тем подробнее будет информация о проблеме. Как найдёшь нужный паблик, пропринтуй его построчно (при каждом вызове функции отправляй сообщение в консоль) и опять жди вылета. Там уже увидишь точную строку с ошибкой.
Reply

Quote:
Originally Posted by Eims
Посмотреть сообщение
Чем больше подобных меток по коду будет, тем подробнее будет информация о проблеме. Как найдёшь нужный паблик, пропринтуй его построчно (при каждом вызове функции отправляй сообщение в консоль) и опять жди вылета. Там уже увидишь точную строку с ошибкой.
оу спасибо попробую! но чаще проблема такая, сервер не пишит/читает файлы или читает не те которые надо, например пароль от аккаунта можно ввести любой и загружается акк совершенно другого игрока! Видимо стоит на мускул переходить?
Reply

pawn Код:
new test[][] = {
{0,1,2,3,4,5,6,7,8,9},
{105,106,107}
};
в test[0] 10 элементов, а в test[1] 3 элемента, как узнать о количестве элементов без ручного счёта?
sizeof не очень помогает..
Reply

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
Reply

Quote:
Originally Posted by Jon_De
Посмотреть сообщение
strlen
Проверил, увы нет.
Reply

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...
Т.е. ячеек в нём столько, сколько в первом.

Если я ничего не путаю.
Reply

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 не очень помогает..
Автоматически узнать размер второго уровня ни как не получиться. В данном примере!
Reply

Quote:
Originally Posted by Stepashka
Только идиот будет держать сервер на 1000 человек на винде.
Необоснованно глупое заявление. К тому же, там никакой из unix-дистрибутивов сертификатом ФСТЭК или ФСБ не одарили?)))
Reply

Quote:
Originally Posted by OKStyle
Посмотреть сообщение
Необоснованно глупое заявление. К тому же, там никакой из unix-дистрибутивов сертификатом ФСТЭК или ФСБ не одарили?)))
Ты такой правильный и без сертификатов не работаешь?!
Наверно ещё и весь софт на всех устройствах у тебя лицензионный.
Reply

Доброго времени суток, товарищи, столкнулся с проблемой, все-таки перешел на 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 не являются, в чем может быть проблема?
Reply

Quote:

Какая нагрузка в том, чтобы обновить объект после создания?

Quote:

Данный вариант решения проблемы повлечёт за собой большую нагрузку на сервер.

противоречите сами себе
вообще, если юзать Streamer_Update в таком случае, то надо перебрать всех игроков в радиусе созданного объекта/3D текста и т.д. Но нужно ли оно?
Reply

Quote:
Originally Posted by DartfoL
Посмотреть сообщение
противоречите сами себе
Не выдумывай. Я говорил о двух совершенно разных функциях.

Quote:
Originally Posted by DartfoL
Посмотреть сообщение
вообще, если юзать Streamer_Update в таком случае, то надо перебрать всех игроков в радиусе созданного объекта/3D текста и т.д. Но нужно ли оно?
Вот именно, зачем я должен это делать? Ведь это работа плагина. И что плохого в этом переборе? Плагин и так постоянно это делает. Одно лишнее обновление ничего не изменит.
Reply

Подскажите, имеется ли функция Get в SetPlayerPosFindZ нужно узнать число.
Reply

Quote:
Originally Posted by k3dr
Посмотреть сообщение
Подскажите, имеется ли функция Get в SetPlayerPosFindZ нужно узнать число.
Функции, нет, но что тебе мешает установить игрока средствами SetPlayerPosFindZ, а потом стандартной функцией взять координату z?
И вообще, вас что на вики забанили, или в инклуды тяжело заглянуть, там полный список функций?
Reply

Quote:
Originally Posted by Stepashka
Посмотреть сообщение
Функции, нет, но что тебе мешает установить игрока средствами SetPlayerPosFindZ, а потом стандартной функцией взять координату z?
И вообще, вас что на вики забанили, или в инклуды тяжело заглянуть, там полный список функций?
Я знаю, что ее нет
Reply

Хорошо, функция игнорирует кастомные объекты ?
Reply

Quote:
Originally Posted by k3dr
Посмотреть сообщение
Хорошо, функция игнорирует кастомные объекты ?
Ага.
Reply

Приветствую. Что тут не так? Не работает вооообще

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;}
Reply

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 можно объединить.
Reply

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); // Голова
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)