Offline |
![Tiszteletbeli Tiszteletbeli](./images/ranks/Tiszteletbeli.png) |
![Avatar](./download/file.php?avatar=7492_1435637175.png) |
Csatlakozott: 2015.04.10. 19:49 Hozzászólások: 610
Megköszönt másnak: 53 alkalommal Megköszönték neki: 147 alkalommal
|
Ezt a formátumot felejtsük el szövegeknél, amxmodx -hez használt pawn fordító még nem optimalizálja ( ha jól rémlik az újabban, amit a samp-osok használnak már megoldották, de egyenlőre nem lesz fordító csere nálunk ), és ahányszor használod, annyiszor kerül bele a memóriába. Helyette: new const g_sTEXT[ ] = "Text";
Így csak 1x kerül be a memóriába. Többire meg van egy rakat plugin, amiből tudsz példát nézni, vagy gondolkozz, ennyinek mennie kell magadtól is. ( ha gépnél leszek mutatok 1 megoldást amit még nem láttam ) Edit: Itt is van: #include < amxmodx > new const g_sADMIN_LEVEL[ ][ ] = { "ALL", "IMMUNITY", "RESERVATION", "KICK", "BAN", "SLAY", "MAP", "CVAR", "CFG", "CHAT", "VOTE", "PASSWORD", "RCON", "LEVEL_A", "LEVEL_B", "LEVEL_C", "LEVEL_D", "LEVEL_E", "LEVEL_F", "LEVEL_G", "LEVEL_H", "MENU", "BAN_TEMP", "ADMIN", "USER" } public plugin_init( ) { register_plugin( "Easy Rank System", "1.0", "Akosch:." ); register_concmd( "test", "@fnTest" ); } @fnTest( iPlayerId, iAdminLevel, iCommandId ) { new sArg[ 11 ]; read_argv( 1, sArg, sizeof ( sArg ) - 1 ); log_amx( "[%s]", g_sADMIN_LEVEL[ fnFind_LSB( str_to_num( sArg ) ) ] ); } fnFind_LSB( iX ) { // De Bruijn static const sDE_BRUIJN[ ] = { 0, 1, 28, 2, 29, 14, 24, 3, 30, 22, 20, 15, 25, 17, 4, 8, 31, 27, 13, 23, 21, 19, 16, 7, 26, 12, 18, 6, 11, 5, 10, 9 } if ( !iX ) return 0; // return -1; return sDE_BRUIJN[ ( ( iX & -iX ) * 0x077CB531 ) >>> 27 ] + 1; // wo/ +1 // return iX ? sDE_BRUIJN[ ( ( iX & -iX ) * 0x077CB531 ) >>> 27 ] + 1 : 0; } /* Results ] test 0 L 02/18/2016 - 18:14:21: [test1.amxx] [ALL] ] test 1 L 02/18/2016 - 18:14:23: [test1.amxx] [IMMUNITY] ] test 2 L 02/18/2016 - 18:14:25: [test1.amxx] [RESERVATION] ] test 4 L 02/18/2016 - 18:14:27: [test1.amxx] [KICK] ] test 8 L 02/18/2016 - 18:14:32: [test1.amxx] [BAN] ] test 16 L 02/18/2016 - 18:14:34: [test1.amxx] [SLAY] ] test 32 L 02/18/2016 - 18:14:36: [test1.amxx] [MAP] */
"Legnagyobb" hatáskörödet íratja ki. ( sajna a kick a ban előtt van, többinél szerintem jó a sorrend )
_________________ Néha itt, de többször nem.
|
|