| Узнать название оружий, которые есть у клиетна? | 
|  | 
| 
| polo79655 | Дата: Среда, 01.06.2016, 18:39:28 | Сообщение # 1 |  |   
|  |  | Сообщений: 99 Репутация: -1 [ +/- ]
 |  | Как узнать, какой пистолет есть у клиента? Как вариант GetWeaponPlayerActive но, а что если он вообще в руки не возьмет пистолет? Как тогда быть?Добавлено (01.06.2016, 18:39:28)---------------------------------------------
 ну пж(
 |  |  |  |  | 
| 
| TEIN | Дата: Среда, 01.06.2016, 19:05:04 | Сообщение # 2 |  |   
|  |  | Сообщений: 563 Репутация: 78 [ +/- ]
 |  | есть уже на форуме, через гугл на раз находитсяДобавлено (01.06.2016, 19:05:04)---------------------------------------------
 или если вкратце : GetPlayerWeaponSlot (индекс) -> GetEntityClassname (название) -> strcmp (сравнение)
 |  |  |  |  | 
| 
| polo79655 | Дата: Среда, 01.06.2016, 19:53:53 | Сообщение # 3 |  |   
|  |  | Сообщений: 99 Репутация: -1 [ +/- ]
 |  | Цитата TEIN (  ) или если вкратце : GetPlayerWeaponSlot (индекс) -> GetEntityClassname (название) -> strcmp (сравнение)научи гуглить, спасибо
 |  |  |  |  | 
| 
| Jon4ik | Дата: Среда, 01.06.2016, 20:08:13 | Сообщение # 4 |  |   
|  |  | Сообщений: 278 Репутация: 7 [ +/- ]
 |  | polo79655, запрос site:world-source.ru |  |  |  |  | 
| 
| polo79655 | Дата: Среда, 01.06.2016, 20:39:20 | Сообщение # 5 |  |   
|  |  | Сообщений: 99 Репутация: -1 [ +/- ]
 |  | А можно как-нибудь гет делать или только так: StrEqual(weapon, "weapon_usp") ? |  |  |  |  | 
| 
| SourceSamil | Дата: Среда, 01.06.2016, 22:30:44 | Сообщение # 6 |  |   
|  |  | Сообщений: 237 Репутация:  [ +/- ]
 |  | new iWeapon = GetPlayerWeaponSlot( iClient, WeaponsSlot ); //Глянь енумif( iWeapon > 0 ) {
 decl String: sWeapon[ 21 ];
 GetEdictClassname( iWeapon, sWeapon, ( sizeof( sWeapon ) - 1) );
 if(strcmp( sWeapon, "тут название", false ) == 0 ) {
 //func
 }
 }
 
 enum WeaponsSlot
 {
 Slot_Invalid = -1, /** Invalid weapon (slot). */
 Slot_Primary = 0, /** Primary weapon slot. */
 Slot_Secondary = 1, /** Secondary weapon slot. */
 Slot_Melee = 2, /** Melee (knife) weapon slot. */
 Slot_Projectile = 3, /** Projectile (grenades, flashbangs, etc) weapon slot. */
 Slot_Explosive = 4, /** Explosive (c4) weapon slot. */
 }
 
 
 Сообщение отредактировал SourceSamil - Среда, 01.06.2016, 22:33:07 |  |  |  |  | 
| 
| GodlikE145 | Дата: Четверг, 02.06.2016, 11:18:59 | Сообщение # 7 |  |   
|  |  | Сообщений: 33 Репутация: 9 [ +/- ]
 |  | Урок "Как гуглить": http://world-source.ru/forum/102-4450-1 |  |  |  |  | 
| 
| polo79655 | Дата: Четверг, 02.06.2016, 12:00:26 | Сообщение # 8 |  |   
|  |  | Сообщений: 99 Репутация: -1 [ +/- ]
 |  | Цитата GodlikE145 (  ) ew iWeapon = GetPlayerWeaponSlot( iClient, WeaponsSlot ); //Глянь енумif( iWeapon > 0 ) {
 decl String: sWeapon[ 21 ];
 GetEdictClassname( iWeapon, sWeapon, ( sizeof( sWeapon ) - 1) );
 if(strcmp( sWeapon, "тут название", false ) == 0 ) {
 //func
 }
 }
 
 enum WeaponsSlot
 {
 Slot_Invalid = -1, /** Invalid weapon (slot). */
 Slot_Primary = 0, /** Primary weapon slot. */
 Slot_Secondary = 1, /** Secondary weapon slot. */
 Slot_Melee = 2, /** Melee (knife) weapon slot. */
 Slot_Projectile = 3, /** Projectile (grenades, flashbangs, etc) weapon slot. */
 Slot_Explosive = 4, /** Explosive (c4) weapon slot. */
 }
 
Это я понял. Просто хочу написать один плагин совместимый для сурс и для кс го, но там оружия различаются, будет геморойно делать кучу ифоф, вот и я подумал, может можно узнать сразу название оружия, или придется через каждый иф: f(strcmp( sWeapon, "weapon_usp", false ) == 0 ), f(strcmp( sWeapon, "weapon_glock", false ) == 0 )....?
 |  |  |  |  | 
| 
| Meow_1337 | Дата: Четверг, 02.06.2016, 12:27:31 | Сообщение # 9 |  |   
|  |  | Сообщений: 207 Репутация: 11 [ +/- ]
 |  | Цитата polo79655 (  )  может можно узнать сразу название оружияИспользуй циклы для этого.
 
 
 Код new const String:block_weapons_list[][] ={
 "ak47", "aug", "mp7", "mp9"
 };
 
 #define Weapon_Count sizeof(block_weapons_list)
 
 decl String:blockWeapon[32];
 GetEntityClassname(weapon, blockWeapon, sizeof(blockWeapon));
 
 for(new i = 0; i < Weapon_Count; ++i)
 {
 if(strcmp(blockWeapon[7], block_weapons_list[i]) == 0)
 {
 return Plugin_Handled;
 }
 }
 дальше сам, я лишь сделал вариант более простым.
 |  |  |  |  | 
| 
| polo79655 | Дата: Четверг, 02.06.2016, 15:11:37 | Сообщение # 10 |  |   
|  |  | Сообщений: 99 Репутация: -1 [ +/- ]
 |  | Цитата Meow_1337 (  ) дальше сам, я лишь сделал вариант более простым.я понял, жалко, ладно спасибо.
 |  |  |  |  |