Raised This Month: $51 Target: $400
 12% 

AMX Mod X 0.20-3 Talk


Post New Thread Reply   
 
Thread Tools Display Modes
kryptonyte
Senior Member
Join Date: Aug 2004
Location: South Carrolinaa
Old 08-30-2004 , 17:04  
Reply With Quote #171

Quote:
Originally Posted by Cable Guy
it should look like this
"steam_0:0:123456" "" "abswbsbdsgassgd" "ce"
the ce are access flags
i just noticed something about your access flags, you have g, s, d all in there twice or three times. does this change anything or did you do that by mistake?
__________________

Kaboom Clan Site
Visit Kaboom Counter-Strike 1.6 Server: 24.88.56.188:27015
Visit Kaboom DOD Server: 24.88.56.188:2030
kryptonyte is offline
Send a message via ICQ to kryptonyte Send a message via AIM to kryptonyte Send a message via MSN to kryptonyte Send a message via Yahoo to kryptonyte
Kamikaze
Senior Member
Join Date: Mar 2004
Location: Butler, PA
Old 08-30-2004 , 17:21  
Reply With Quote #172

Quote:
Originally Posted by kryptonyte
Quote:
Originally Posted by Cable Guy
it should look like this
"steam_0:0:123456" "" "abswbsbdsgassgd" "ce"
the ce are access flags
i just noticed something about your access flags, you have g, s, d all in there twice or three times. does this change anything or did you do that by mistake?
You need to have it in alphabetic order from a to z, no duplicates or it will not work at all.

Example: "abcdefghijklmnopqrstuvwxyz"
Kamikaze is offline
Send a message via ICQ to Kamikaze Send a message via AIM to Kamikaze Send a message via MSN to Kamikaze Send a message via Yahoo to Kamikaze
narcussist
Senior Member
Join Date: Jul 2004
Location: Canton, Ohio
Old 08-30-2004 , 17:47  
Reply With Quote #173

Quote:
Originally Posted by kryptonyte
Quote:
Originally Posted by Cable Guy
it should look like this
"steam_0:0:123456" "" "abswbsbdsgassgd" "ce"
the ce are access flags
i just noticed something about your access flags, you have g, s, d all in there twice or three times. does this change anything or did you do that by mistake?
good eye mate
__________________
narcussist is offline
Send a message via AIM to narcussist Send a message via MSN to narcussist Send a message via Yahoo to narcussist
karlos
Veteran Member
Join Date: Apr 2004
Location: Germany/Poland
Old 08-31-2004 , 00:18  
Reply With Quote #174

1)
why there are so many function that return 0 in ns2amx.inc ? in the ns2amx module (not the amxx 0.2 module but the orig one) these functions existed (eg. msg_data, msg_name ...), if replaced by new by which?

2)
is it possible to make fakemeta.inc and ns2amx.inc not interupt themselfes? (eg: ns2amx.inc has "stock pev(index, value, ...)" but this is a func of fakemeta.inc, or set_pev the same)

3)
i dont know how many but there a wrong function declaration in ns2amx.inc
Code:
stock msg_set_i(number, value) {     return set_msg_arg_int(number, value) }
but engine.inc has "set_msg_arg_int(argn, argtype, iValue)"
giving 2 parameters to a func that needs 3 (there r more like that)
__________________
alias White Panther
karlos is offline
mahnsawce
Senior Member
Join Date: Apr 2004
Location: internet
Old 08-31-2004 , 01:19  
Reply With Quote #175

Quote:
1)
why there are so many function that return 0 in ns2amx.inc ? in the ns2amx module (not the amxx 0.2 module but the orig one) these functions existed (eg. msg_data, msg_name ...), if replaced by new by which?
Because those functions are not in any module bundled with AMXx. Those functions aren't very well used either, but if they were and somebody tried to compile without the ns2amx module itself, the compiler would complain.


Quote:
2)
is it possible to make fakemeta.inc and ns2amx.inc not interupt themselfes? (eg: ns2amx.inc has "stock pev(index, value, ...)" but this is a func of fakemeta.inc, or set_pev the same)
That's fixed in CVS, I thought. I know I created (untested) stocks to wrap pev_i and pev_f, but those would not interfere.

Quote:
3)
i dont know how many but there a wrong function declaration in ns2amx.inc

stock msg_set_i(number, value)
{
return set_msg_arg_int(number, value)
}

but engine.inc has "set_msg_arg_int(argn, argtype, iValue)"
giving 2 parameters to a func that needs 3 (there r more like that)
Thanks, I'll fix it.

Edit: Fixed in CVS, let me know if you see any more.
mahnsawce is offline
karlos
Veteran Member
Join Date: Apr 2004
Location: Germany/Poland
Old 08-31-2004 , 08:06  
Reply With Quote #176

but why arent they in any module? or only currently not?
can u tell me how to change this with out these functions?
Code:
enum {     tNone,     tAttacker,     tDefender,     tMarine2,     tAlien2,     tObserver } public plugin_init(){        register_msgedit("ScoreInfo", "fix_scoreboard") } public fix_scoreboard(id){     new team = msg_data(7)     if (team == tMarine2)         msg_set_i(7,tAlien2)     if (team == tAttacker)         msg_set_i(7,tAttacker) }
in marinevsmarine this makes the green team to red team in scoreboard
i tried this
Code:
public fix_scoreboard(id){     new team = get_msg_argtype(7)     if (team == tMarine2)         set_msg_arg_int(7, get_msg_argtype(7), tAlien2)     if (team == tAttacker)         set_msg_arg_int(7, get_msg_argtype(7), tAttacker) }
but this will change everything to team red (readyroom, team 1,team3)


another thing which im not posting for the 3rd time (sry but i dont get any response to this neither i see in cvs)
1)
in engine_stocks.inc in the function fakedamage there is "spawn(entity)
" but spawn is part of fun module so u should use "DispatchSpawn(entity)"

2)
this request: in util.cpp the func UTIL_ShowMOTD is
Code:
void UTIL_ShowMOTD( edict_t *client , char *motd, int mlen, const char *name) {     if (!gmsgServerName)         return;    // :TODO: Maybe output a warning log?     MESSAGE_BEGIN( MSG_ONE , gmsgServerName, NULL, client );     WRITE_STRING(name);     MESSAGE_END();     char *n = motd;     char c = 0;     int a;     while ( *n ) {         a = mlen;         if ( a > 175 ) a = 175;         mlen -= a;         c = *(n+=a);         *n = 0;         MESSAGE_BEGIN( MSG_ONE , gmsgMOTD, NULL, client );         WRITE_BYTE( c ? FALSE : TRUE );         WRITE_STRING( motd );         MESSAGE_END();         *n = c;         motd = n;     }     MESSAGE_BEGIN( MSG_ONE , gmsgServerName, NULL, client );     WRITE_STRING( hostname->string );     MESSAGE_END(); }
my request is to change it to something like that
Code:
void UTIL_ShowMOTD( edict_t *client , char *motd, int mlen, const char *name) {     if (gmsgServerName){         MESSAGE_BEGIN( MSG_ONE , gmsgServerName, NULL, client );         WRITE_STRING(name);         MESSAGE_END();     }     char *n = motd;     char c = 0;     int a;     while ( *n ) {         a = mlen;         if ( a > 175 ) a = 175;         mlen -= a;         c = *(n+=a);         *n = 0;         MESSAGE_BEGIN( MSG_ONE , gmsgMOTD, NULL, client );         WRITE_BYTE( c ? FALSE : TRUE );         WRITE_STRING( motd );         MESSAGE_END();         *n = c;         motd = n;     }     if (gmsgServerName){         MESSAGE_BEGIN( MSG_ONE , gmsgServerName, NULL, client );         WRITE_STRING( hostname->string );         MESSAGE_END();     } }
this way gmsgServerName is still checked (i had errors with it myself, my old version of OpFor cant display it) AND a MOTD is SHOWN (that is very important to me). Otherwise i would have to recompile it myself again, what i would like to prevent as i have some probs with it
can u tell me if u could do this? if not maybe why?

thx
__________________
alias White Panther
karlos is offline
mahnsawce
Senior Member
Join Date: Apr 2004
Location: internet
Old 08-31-2004 , 08:41  
Reply With Quote #177

Quote:
Originally Posted by karlos
but why arent they in any module? or only currently not?
can u tell me how to change this with out these functions?
Because not everything from ns2amx was placed into AMXx. These functions will more than likely not be placed in either. I was told to make the NS module to be NS only items, otherwise I would have probably just copied all the code and renamed it (i'm so lazy...).

However if there is a specific function you would like, ask me.
Quote:
Code:
public fix_scoreboard(id){     new team = get_msg_argtype(7)     if (team == tMarine2)         set_msg_arg_int(7, get_msg_argtype(7), tAlien2)     if (team == tAttacker)         set_msg_arg_int(7, get_msg_argtype(7), tAttacker) }
but this will change everything to team red (readyroom, team 1,team3)
Just a guess here (not actually tested it), but you're calling "get_msg_argtype(7)", not "get_msg_arg_int(7)" which I would imagine is what you want.


Quote:
in engine_stocks.inc in the function fakedamage there is "spawn(entity)
" but spawn is part of fun module so u should use "DispatchSpawn(entity)"
Ok, I'll fix that real quick.

Quote:
2)
this request: in util.cpp the func UTIL_ShowMOTD is
Code:
<snip>
my request is to change it to something like that
Code:
<snip>
this way gmsgServerName is still checked (i had errors with it myself, my old version of OpFor cant display it) AND a MOTD is SHOWN (that is very important to me). Otherwise i would have to recompile it myself again, what i would like to prevent as i have some probs with it
can u tell me if u could do this? if not maybe why?

thx
I'll ask bailopan about that when he awakens from his slumber.
mahnsawce is offline
BAILOPAN
Join Date: Jan 2004
Old 08-31-2004 , 09:09  
Reply With Quote #178

There was a bug with setting message integers, it's fixed in CVS.
I think the code you had was correct.
__________________
egg
BAILOPAN is offline
[AoL]Demandred
Member
Join Date: Apr 2004
Old 08-31-2004 , 10:09  
Reply With Quote #179

[quote="[AoL]Demandred"][quote="[AoL]Demandred"]
Quote:
Originally Posted by [AoL
Demandred]

<snip>

As for the vgui menus, I think it is very likely a similar problem, but still not sure why the command is making it through:

Code:
checkRest(id,menu,key){   if ( g_blockPos[ (menu * 8 + key) + (get_user_team(id) - 1) * 56 ] ){     engclient_cmd(id,"menuselect","10")     client_print(id,print_center, g_Restricted )     return PLUGIN_HANDLED   }   return PLUGIN_CONTINUE } public ammoRest1(id)        return checkRest(id,0,5) public ammoRest2(id)        return checkRest(id,0,6) public menuBuy(id,key)      return checkRest(id,0,key) public menuPistol(id,key)   return checkRest(id,1,key) public menuShotgun(id,key)  return checkRest(id,2,key) public menuSub(id,key)      return checkRest(id,3,key) public menuRifle(id,key)    return checkRest(id,4,key) public menuMachine(id,key)  return checkRest(id,5,key) public menuItem(id,key)     return checkRest(id,6,key)

So the checkRest calls it, then I believe it DOES say the item is restricted, and you get it anyway . . . .

So this:

Code:
    engclient_cmd(id,"menuselect","10")

Is not happening before the client's command makes it through . . .

???

Maybe I'm close?
Okay, no. The vgui menu buy doesn't even make it to
Code:
    client_print(id,print_center, g_Restricted )

Only default messages are printed on screen when you try to buy an item using vgui menus, and it is restricted. (i.e. - you already have a glock, and glock is restricted, it still just says "You already own that weapon")

So the vgui menu commands aren't being caught
[AoL]Demandred is offline
BAILOPAN
Join Date: Jan 2004
Old 08-31-2004 , 11:26  
Reply With Quote #180

karlos, PM committed your fix

aol: restmenu bugs were not from the plugin itself, it works in TP4
__________________
egg
BAILOPAN is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 04:03.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode