Полная чушь с названием паблика таймера.

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
upload_2017-2-21_17-13-5.png


<< Схерали мой код не компилируется, 5 секунд назад все было нормально! >>

14230410592460.jpg

Внес кое какую корректировку... Компилирую. Ошибка. Окей...
Я добавил всего одну ***** ****** строку, которую потом ***** удалил!

Проверил все кавычки/скобки, точки/запятые.
Подключал #pragma semicolon 1

Скачивал новую/старую версию sourcemod(a) (для компиляции) - не помогло!
Хотя я на все сто процентов был уверен что все там правильно, нигде не накосячил.

Без результата!

Решил по новой написать код передачи данных через таймер...
Скомпилировалось, а теперь сижу **** думаю, че за бред, почему код тогда не компилируется.

Психанул, закрыл все, пошел отдыхать, все нервы себе истрепал за пол дня.

Вернулся...
Какой-то черт меня дернул переименовать строку public Timer(a)... И о чудо, все скомпилировалось.
Хотя раньше все и так было четко...

А теперь кто нибудь может мне объяснить что это за херня такая была.

Из-за какого-то названия паблика я просрал пол дня? Это нормально ***** ?

Сам код кинуть не могу, но что-то наподобие этого:
PHP:
#include <csgo_colors>

public OnPluginStart()
{
    HookEvent("player_death", PlayerDeath);
}

public Action:PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
    new victim = GetClientOfUserId(GetEventInt(event, "userid"));
 
    CreateTimer(5.0, Message, victim)
}

Допустим:
public Action:Message(Handle:Timer, victim) - не компилируется.
А:
public Action:MessageOpen(Handle:Timer, victim) - компилируется.
{
    CGOPrintToChat(victim, "{LIGHTRED}ЙОУ!");
}
А самое интересное вот что, меняю название паблика на прежнее и не компилруется снова. Ахринительно!
Я к чему это, ошибки в названии паблика не было.

Простите за бомбеж, надо было выговориться.
Может я и дибил, но тут мне кажется полный пиииииииииииииииииииииииии...
 

Вложения

  • upload_2017-2-21_17-12-55.png
    upload_2017-2-21_17-12-55.png
    3.2 КБ · Просмотры: 10

Boeing 767

заскамили мамонта ни за что, ни про что
Сообщения
524
Реакции
913
Посмотреть вложение 21621

<< Схерали мой код не компилируется, 5 секунд назад все было нормально! >>

14230410592460.jpg

Внес кое какую корректировку... Компилирую. Ошибка. Окей...
Я добавил всего одну ***** ****** строку, которую потом ***** удалил!

Проверил все кавычки/скобки, точки/запятые.
Подключал #pragma semicolon 1

Скачивал новую/старую версию sourcemod(a) (для компиляции) - не помогло!
Хотя я на все сто процентов был уверен что все там правильно, нигде не накосячил.

Без результата!

Решил по новой написать код передачи данных через таймер...
Скомпилировалось, а теперь сижу **** думаю, че за бред, почему код тогда не компилируется.

Психанул, закрыл все, пошел отдыхать, все нервы себе истрепал за пол дня.

Вернулся...
Какой-то черт меня дернул переименовать строку public Timer(a)... И о чудо, все скомпилировалось.
Хотя раньше все и так было четко...

А теперь кто нибудь может мне объяснить что это за херня такая была.

Из-за какого-то названия паблика я просрал пол дня? Это нормально ***** ?

Сам код кинуть не могу, но что-то наподобие этого:
PHP:
#include <csgo_colors>

public OnPluginStart()
{
    HookEvent("player_death", PlayerDeath);
}

public Action:PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
    new victim = GetClientOfUserId(GetEventInt(event, "userid"));

    CreateTimer(5.0, Message, victim)
}

Допустим:
public Action:Message(Handle:Timer, victim) - не компилируется.
А:
public Action:MessageOpen(Handle:Timer, victim) - компилируется.
{
    CGOPrintToChat(victim, "{LIGHTRED}ЙОУ!");
}
А самое интересное вот что, меняю название паблика на прежнее и не компилруется снова. Ахринительно!
Я к чему это, ошибки в названии паблика не было.

Простите за бомбеж, надо было выговориться.
Может я и дибил, но тут мне кажется полный пиииииииииииииииииииииииии...
Было примерно такое же, просто добавлял инклуд morecolors и заменял все PrintToChat на CPrintToChat, компилятор ругался не пойми на что, решилось само по себе, покомпилировал другие плагины, подождал и смог скомпилировать. Не знаю почему так
 

Danyas

Участник
Сообщения
2,173
Реакции
1,072
PHP:
public OnPluginStart()
{
    HookEvent("player_death", PlayerDeath);
}

public Action:PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
    CreateTimer(5.0, Message, GetClientOfUserId(GetEventInt(event, "userid")));
}

public Action: Message(Handle:timer, any:victim)
{
    PrintToChat(victim, "/x02ЙОУ!");
}
--- Добавлено позже ---
Handle:Timer - Timer это тип, его нельзя там с большой писать, только с маленькой (как переменная)
 

gibs

Фитиль народного волненья
Сообщения
722
Реакции
407
Мошенник
Timer - зарезервированное слово под тайпсет. И тебе ведь компилятор прямым языком говорит в чём проблема.
Ну или у тебя semicolon 1 и ты точку с запятой после создания таймера не поставил.
 

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Timer - зарезервированное слово под тайпсет.
Не совсем понимаю тебя, ну да ладно, буду писать с маленький впредь...

Ну или у тебя semicolon 1 и ты точку с запятой после создания таймера не поставил.
Я ее в обще не использовал до этого случая.
Не считал нужным... После того как не смог решить проблему так, решил ее подключить > исправил все недочеты > но ошибка осталась.
Я тупо меняю название паблика - и он компилируется, возвращаю назад - не компилируется.

Чудеса.
 

Drumanid

Нестандартное звание
Сообщения
1,862
Реакции
1,748
Если коротко, то с основ "азбуки" SM говорится, что "Имена переменных и функций должны быть уникальными".
Хотя раньше все и так было четко...
Меня чутка отпустило, что аж стыдно стало за подобную тему :biggrin:
 
Сверху Снизу