Русское сообщество по скриптингу

передача formatex через натив  [Решено]

Все вопросы по скриптингу для AMXX, помощь в редактировании плагинов.

Модераторы: Subb98, liFe iS GoOD

Правила форума
1. Запрещено материться и оскорблять других участников форума.
2. Запрещен флуд, оффтоп, дабл постинг во всех разделах форума, кроме раздела "Болтовня".
3. Запрещено взламывать сайт/форум или наносить любой вред проекту.
4. Запрещено рекламировать другие ресурсы.
5. Запрещено создавать темы без информативного названия. Название темы должно отображать ее смысл.

В данном разделе форума разрешено создавать темы, касающие только скриптинга для AMX Mod X.

Правила при создании новой темы:
1. При вставке кода плагина необходимо использовать тег [code=php].
2. Любые изображения должны быть загружены, как вложения к вашему сообщению.
3. При описании проблемы или запросе на помощь в редактировании плагина обязательно выкладывайте исходник sma плагина.

передача formatex через натив

Сообщение limbooc » 17 апр 2018, 21:27

Добрый времени суток форумчане:

Не подскажите как передать информации в другой плагин через натив? в моем случая это замен строк через formatex


Плагин А:
Код: Выделить всё


new FormatQuests
[256];

public plugin_natives()
{
    register_native("native_quests", "native_quests", 1);
}

public native_quests() return FormatQuests;

public Public_TaskInformer()
{
if(--
g_iCountDown)
    {
        formatex(FormatQuests, charsmax(FormatQuests), "Вопрос: %s^nОсталось на ответ: %d сек", g_szMath, g_iCountDown);     
    
}


Плагин Б:
Код: Выделить всё

native native_quests
()

public Task_inFormer(pPlayer)
{

set_hudmessage(255, 255, 255, 2.0, -1.0, 0, 0.0, 0.8, 0.2, 0.2, -1);
ShowSyncHudMsg(pPlayer, g_iSyncMainInformer, "%s", jbe_quests());

}


при таком раскладе, то в худе появляется следующее:
Аватара пользователя
limbooc
 
Сообщения: 71
Зарегистрирован: 15 мар 2017, 07:45
Благодарил (а): 13 раз.
Поблагодарили: 1 раз.
Опыт программирования: Около года
Языки программирования: Pawn

Re: передача formatex через натив  [Решено]

Сообщение Mistrick » 17 апр 2018, 21:41

Код: Выделить всё
public plugin_natives()
{
    register_native("jbe_quests", "native_quests");
}

// native jbe_quests(str[], len);
public native_quests(plugin, params)
{
    enum {
        arg_str = 1,
        arg_len
    
};
    
    static text
[256];
    formatex(text, charsmax(text), "Вопрос: %s^nОсталось на ответ: %d сек", g_szMath, g_iCountDown);
    set_string(arg_str, text, get_param(arg_len));
}

Код: Выделить всё
native jbe_quests(str[], len);

public Task_inFormer(pPlayer)
{
    new quests_str[256];
    jbe_quests(quests_str, charsmax(quests_str));
    set_hudmessage(255, 255, 255, 2.0, -1.0, 0, 0.0, 0.8, 0.2, 0.2, -1);
    ShowSyncHudMsg(pPlayer, g_iSyncMainInformer, "%s", quests_str);
}

Но скорее всего, вы перемудрили с логикой.
Аватара пользователя
Mistrick
Скриптер
 
Сообщения: 2940
Зарегистрирован: 04 ноя 2012, 18:15
Благодарил (а): 43 раз.
Поблагодарили: 1247 раз.
Языки программирования: PAWN
С/С++(few above zero)

Re: передача formatex через натив

Сообщение limbooc » 17 апр 2018, 22:15

Mistrick, благодарю, закрываем :thumbs_up
Аватара пользователя
limbooc
 
Сообщения: 71
Зарегистрирован: 15 мар 2017, 07:45
Благодарил (а): 13 раз.
Поблагодарили: 1 раз.
Опыт программирования: Около года
Языки программирования: Pawn


Вернуться в Скриптинг

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 13