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

Run time error 10: native error (native "cs_set_user_deaths"

Все вопросы по работе и настройке AMXX и его плагинов.

Модератор: liFe iS GoOD

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

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

Run time error 10: native error (native "cs_set_user_deaths"

Сообщение alma » 19 июл 2011, 23:17

Код: Выделить всё
L 05/28/2011 - 19:39:44: Start of error session.
L 05/28/2011 - 19:39:44: Info (map "fy_snow") (file "addons/amxmodx/logs/error_20110528.log")
L 05/28/2011 - 19:39:44: [CSTRIKE] Invalid player 7
L 05/28/2011 - 19:39:44: [AMXX] Displaying debug trace (plugin "resetscore.amxx")
L 05/28/2011 - 19:39:44: [AMXX] Run time error 10: native error (native "cs_set_user_deaths")
L 05/28/2011 - 19:39:44: [AMXX]    [0] resetscore.sma::reset_score (line 53)


исправьте пожалуйста

вот сам плагин


Код: Выделить всё
/*
   This is a simple plugin I made that will just restart a players score
   making their deaths and kills set to 0, this is to help players out a
   little bit because they no longer have to reconnect or retry if they
   want their score to start over, they can just type a simple command
   
      ---------------------------------
       --------- MADE BY SILENTTT -----
        ------ MADE BY SILENTTT ------
         --  MADE BY SILENTTT -------
        ------ MADE BY SILENTTT ------
       --------- MADE BY SILENTTT -----
      ---------------------------------
*/

#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define adtime     600.0 //Default of 10 minuites

new pcvar_Advertise
new pcvar_Display

public plugin_init()
{
    
register_plugin("Reset Score""1.0""Silenttt")
    
    
//You may type /rs or /restartscore
    
register_clcmd("say /rs""reset_score")
    
register_clcmd("say /restartscore""reset_score")
    
    
//This command by default will be set at 0
    //Change it to 1 in server.cfg if you want
    //A message to be shown to advertise this.
    
pcvar_Advertise register_cvar("sv_rsadvertise""0")
    
//This command by default is also 0
    //Change it to 1 in server.cfg if you want
    //It to show who reset their scores when they do it
    
pcvar_Display register_cvar("sv_rsdisplay""0")
    
    if(
get_cvar_num("sv_rsadvertise") == 1)
    {
        
set_task(adtime"advertise"___"b")
    }
}

public 
reset_score(id)
{
    
//These both NEED to be done twice, otherwise your frags wont
    //until the next round
    
cs_set_user_deaths(id0)
    
set_user_frags(id0)
    
    if(
get_pcvar_num(pcvar_Display) == 1)
    {
        new 
name[33]
        
get_user_name(idname32)
        
client_print(0print_chat"%s Has Just Reset His Score"name)
    }
    else
    {
        
client_print(idprint_chat"You Have Just Reset Your Score")
    }
}

public 
advertise()
{
    
set_hudmessage(255255255, -1.00.2000.212.0)
    
show_hudmessage(0"Fragis Gasanuleblad Chacere /rs")
}

public 
client_putinserver(id)
{
    if(
get_pcvar_num(pcvar_Advertise) == 1)
    {
        
set_task(10.0"connectmessage"id__"a"1)
    }
}

public 
connectmessage(id)
{
    if(
is_user_connected(id))
    {
    
client_print(idprint_chat"Tape  /rs to reset your score")
    }
}
 
Аватара пользователя
alma
 
Сообщения: 32
Зарегистрирован: 21 май 2011, 14:12
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение Rejiser » 19 июл 2011, 23:33

В начало функции :
Код: Выделить всё
if(!is_user_connected(id))
{
    return PLUGIN_HANDLED
Аватара пользователя
Rejiser
 
Сообщения: 2928
Зарегистрирован: 03 сен 2010, 16:23
Благодарил (а): 215 раз.
Поблагодарили: 675 раз.
Языки программирования: Counter-Strike 1.6

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение alma » 20 июл 2011, 01:19

Rejiser, я очень извеняюсь , но я не понял , куда вставить ..
и еще, я забыл написать. в плагине была так

Код: Выделить всё
 
//These both NEED to be done twice, otherwise your frags wont
   //until the next round
   
cs_set_user_deaths(id0)
   
set_user_frags(id0)
   
cs_set_user_deaths(id0)
   
set_user_frags(id0


две удалил, правильно ли сделал ?
Аватара пользователя
alma
 
Сообщения: 32
Зарегистрирован: 21 май 2011, 14:12
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re:Run time error 10: native error (native "cs_set_user_deat

Сообщение Rejiser » 20 июл 2011, 03:32

alma писал(а):Rejiser, я очень извеняюсь , но я не понял , куда вставить ..

в начало функции reset_score(id)

alma писал(а): и еще, я забыл написать. в плагине была так

Код: Выделить всё
 //These both NEED to be done twice, otherwise your frags wont
   //until the next round
   
cs_set_user_deaths(id0)
   
set_user_frags(id0)
   
cs_set_user_deaths(id0)
   
set_user_frags(id0


две удалил, правильно ли сделал ?

Ну ээ, наверное да, не знаю, что автор хотел этими двойными командами добиться.
Аватара пользователя
Rejiser
 
Сообщения: 2928
Зарегистрирован: 03 сен 2010, 16:23
Благодарил (а): 215 раз.
Поблагодарили: 675 раз.
Языки программирования: Counter-Strike 1.6

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение alma » 20 июл 2011, 09:28

в начало функции reset_score(id)

добавил вот так

Код: Выделить всё
public reset_score(id)
{
    if(!
is_user_connected(id))
    {
    return 
PLUGIN_HANDLED
    

    
cs_set_user_deaths(id0)
    
set_user_frags(id0)
    
    if(
get_pcvar_num(pcvar_Display) == 1)
    {
        new 
name[33]
        
get_user_name(idname32)
        
client_print(0print_chat"%s Has Just Reset His Score"name)
    }
    else
    {
        
client_print(idprint_chat"You Have Just Reset Your Score")
    }
}
 


вот лог компляции

Код: Выделить всё
Warning: Function "reset_score" should return a value on line 68
Header size:            548 bytes
Code size:             1356 bytes
Data size:             1112 bytes
Stack/heap size:      16384 bytes; estimated max. usage=779 cells (3116 bytes)
Total requirements:   19400 bytes

1 Warning.
Done.


Warning: Function "reset_score" should return a value on line 68
68 строчка это

Код: Выделить всё
}
Аватара пользователя
alma
 
Сообщения: 32
Зарегистрирован: 21 май 2011, 14:12
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение Rejiser » 20 июл 2011, 14:20

alma писал(а):в начало функции reset_score(id)

Код: Выделить всё
Warning: Function "reset_score" should return a value on line 68
Header size:            548 bytes
Code size:             1356 bytes
Data size:             1112 bytes
Stack/heap size:      16384 bytes; estimated max. usage=779 cells (3116 bytes)
Total requirements:   19400 bytes

1 Warning.
Done.


Warning: Function "reset_score" should return a value on line 68
68 строчка это

Код: Выделить всё
}


Ну да, логично, что она должна вернуть значение
Перед последней скобкой:
Код: Выделить всё
return PLUGIN_CONTINUE
Аватара пользователя
Rejiser
 
Сообщения: 2928
Зарегистрирован: 03 сен 2010, 16:23
Благодарил (а): 215 раз.
Поблагодарили: 675 раз.
Языки программирования: Counter-Strike 1.6

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение PRoSToTeM@ » 20 июл 2011, 15:41

Rejiser, а зачем PLUGIN_HANDLED когда можно просто return;
Аватара пользователя
PRoSToTeM@
Скриптер
 
Сообщения: 2498
Зарегистрирован: 26 мар 2010, 00:12
Благодарил (а): 438 раз.
Поблагодарили: 1125 раз.

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение alma » 20 июл 2011, 16:16

Rejiser,

не получается у меня, дайте готовый код пожалуйста
Аватара пользователя
alma
 
Сообщения: 32
Зарегистрирован: 21 май 2011, 14:12
Благодарил (а): 11 раз.
Поблагодарили: 0 раз.
Языки программирования: Counter-Strike 1.6
Counter-Strike: Source
Team Fortress II
Left 4 Dead

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение Rejiser » 20 июл 2011, 16:49

PRoSToTeM@ писал(а):Rejiser, а зачем PLUGIN_HANDLED когда можно просто return;

окэ

alma,
Код: Выделить всё
public reset_score(id)
{
   if(!is_user_connected(id))
   {
   return
   
} 
   cs_set_user_deaths
(id, 0)
   set_user_frags(id, 0)
   
   if
(get_pcvar_num(pcvar_Display) == 1)
   {
      new name[33]
      get_user_name(id, name, 32)
      client_print(0, print_chat, "%s Has Just Reset His Score", name)
   }
   else
   
{
      client_print(id, print_chat, "You Have Just Reset Your Score")
   }
return PLUGIN_CONTINUE
}
Аватара пользователя
Rejiser
 
Сообщения: 2928
Зарегистрирован: 03 сен 2010, 16:23
Благодарил (а): 215 раз.
Поблагодарили: 675 раз.
Языки программирования: Counter-Strike 1.6

Re: Run time error 10: native error (native "cs_set_user_dea

Сообщение PRoSToTeM@ » 20 июл 2011, 16:57

Rejiser, убери
Код: Выделить всё
return PLUGIN_CONTINUE
Аватара пользователя
PRoSToTeM@
Скриптер
 
Сообщения: 2498
Зарегистрирован: 26 мар 2010, 00:12
Благодарил (а): 438 раз.
Поблагодарили: 1125 раз.

След.

Вернуться в Вопросы по AMXX и его плагинам

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

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