引用 | 编辑
ccw111
2012-06-30 17:22 |
2楼
▲ ▼ |
register_logevent( "Event_RouneEnd" , 2 , "1=RouneEnd" )
等我一会再写 ( 要测试 ) x1 |
引用 | 编辑
ccw111
2012-06-30 18:52 |
6楼
▲ ▼ |
#include < amxmodx >
#include < cstrike > public plugin_init( ) { register_logevent( "Event_RoundEnd" , 2 , "1=Round_End" ); } public Event_RoundEnd( ) { new iPlayer[ 32 ] , iCount; get_players( iPlayer , iCount ); new iSelected , iRanNum; new TempID; while( !iSelected ) { iRanNum = random( iCount ); TempID = iPlayer[ iRanNum ]; if( cs_get_user_team( TempID ) != CS_TEAM_T ) { cs_set_user_team( TempID , CS_TEAM_T ) iSelected ++; return PLUGIN_HANDLED_MAIN; } } return PLUGIN_HANDLED_MAIN; } 类似这样就是了,但我未测试过 不过要加在不同插件的话,应该要作一些修改 x1 |
引用 | 编辑
ccw111
2012-06-30 19:51 |
12楼
▲ ▼ |
#include < amxmodx >
#include < cstrike > public plugin_init( ) { register_logevent( "Event_RoundEnd" , 2 , "1=RountEnd" ); } public Event_RoundEnd( ) { new iPlayer[ 32 ] , iCount; get_players( iPlayer , iCount ); new iSelected , iRanNum; new TempID; while( iSelected < 2 ) { iRanNum = random( iCount ); TempID = iPlayer[ iRanNum ]; if( cs_get_user_team( TempID ) != CS_TEAM_T ) { cs_set_user_team( TempID , CS_TEAM_T ) iSelected ++; return PLUGIN_HANDLED_MAIN; } } return PLUGIN_HANDLED_MAIN; } 我改了的地方是while 另外不用给我花了 x0 |
引用 | 编辑
ccw111
2012-06-30 20:37 |
15楼
▲ ▼ |
下面是引用 96066289 于 2012-06-30 20:13 发表的 :if( maxplayer >= 1 ) else if(maxplayer >= 8 ) else if(maxplayer >= 16 ) 我可以告诉你,这3个中只有第一个case能执行 为什么? maxplayer >= 8 基本上和 maxplayer >= 1 一样 maxplayer >= 16也是一样的情况 下面的两个CASE自然就不会执行(因为第一个已经符合了) 因此你使需要这样做 if( maxplayer >= 1 && maxplayer < 8 ) else if( maxplayer >= 8 && maxplayer < 16 ) x0 |