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

jbe_privileges: портировать скрипт на Pawn

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

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

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

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

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

Re: jbe_privileges: портировать скрипт на Pawn

Сообщение артист666 » 17 окт 2017, 17:15

Это не нужно:
Код: Выделить всё
replace_all(String:string[], lenString:what[], String:with[])
{
    new 
pos 0;
    new 
var1 contain(stringwhat);
    
pos var1;
    if (
var1 == -1)
    {
        return 
0;
    }
    new 
total 0;
    new 
with_len strlen(with);
    new 
diff strlen(what) - with_len;
    new 
total_len strlen(string);
    new 
temp_pos 0;
    while (
replace(string[pos], len poswhatwith))
    {
        
pos with_len pos;
        
total_len -= diff;
        if (
pos >= total_len)
        {
            return 
total;
        }
        else
        {
            
temp_pos contain(string[pos], what);
            if (
temp_pos == -1)
            {
                return 
total;
            }
            else
            {
                
pos temp_pos pos;
                
total++;
            }
            return 
total;
        }
        return 
total;
    }
    return 
total;
}

public 
__fatal_ham_error(Ham:idHamError:errString:reason[])
{
    !!! 
Removed Phi
    
if (func != -&& callfunc_begin_i(func, -1) == 1)
    {
        
callfunc_push_int(id);
        
callfunc_push_int(err);
        
callfunc_push_str(reasonfalse);
        if (
callfunc_end() == 1)
        {
            
fail 0;
        }
    }
    if (
fail)
    {
        
set_fail_state(reason);
    }
    return 
0;

Это вот так выглядит:
Код: Выделить всё
new var3 g_iDoubleJump;
new 
var1;
if (
var3[id][0][0])
{
    new 
var4 g_iDoubleJump[id];
    
var4 0;
    
var1 var4;
}
else
{
    
var1 var3;

>>>
Код: Выделить всё
if(g_iDoubleJump[id]) g_iDoubleJump[id] = false


Или просто:
Код: Выделить всё
public EventRoundStart()
{
    new 
id 0iNum = -1
    
    
while (++id <= g_iMaxPlayers)
    {
        while (++
iNum 10)
        {
            if (
g_iLimitChoice[id][iNum]) g_iLimitChoice[id][iNum]--
        }
        
g_iDoubleJump[id] = false
        g_bResetSpeed
[id] = false
    
}

И так везде.
Если вы хотите чему-то научиться, пробуйте, задавайте вопросы.
Иначе компенсируйте потраченное время на ваши "проблемы".
Аватара пользователя
артист666
 
Сообщения: 2706
Зарегистрирован: 09 апр 2013, 17:46
Благодарил (а): 284 раз.
Поблагодарили: 639 раз.
Опыт программирования: Больше трех лет
Языки программирования: С, C++
Delphi
HTML, CSS, Java Script
Pawn

Re: jbe_privileges: портировать скрипт на Pawn

Сообщение oReo » 19 окт 2017, 13:32

артист666, щас попробую.
деструктор решает все проблемы: нет переменной - нет проблемы (с) Subb98
Аватара пользователя
oReo
 
Сообщения: 165
Зарегистрирован: 24 май 2017, 05:59
Благодарил (а): 10 раз.
Поблагодарили: 5 раз.
Опыт программирования: Около 3 месяцев
Языки программирования: Pawn

Пред.

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

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11

cron