<div><font size="5"><b>Weapon Skin System</b></font><br /><br /><b>Version:</b> Models API v0.6-18, Skin System v0.5-45<br /><b>Author:</b> Mistrick<br /><b>Description:</b> A set of plugins for work with weapon models.<br /><br /><b>API:</b><br />weapon_models_api.inc<br /><div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">PHP Code:</div>
<div class="alt2">
<hr />
<code style="white-space:nowrap">
<div dir="ltr" style="text-align:left;">
<!-- php buffer start --><code><span style="color: #000000">
<span style="color: #0000BB">enum
<br /></span><span style="color: #007700">{
<br /> </span><span style="color: #0000BB">WEAPON_CAN_PICKUP</span><span style="color: #007700">,
<br /> </span><span style="color: #0000BB">WEAPON_BLOCK_PICKUP
<br /></span><span style="color: #007700">};
<br />
<br /></span><span style="color: #0000BB">enum
<br /></span><span style="color: #007700">{
<br /> </span><span style="color: #0000BB">WEAPON_MODEL_IGNORED</span><span style="color: #007700">,
<br /> </span><span style="color: #0000BB">WEAPON_MODEL_CHANGED
<br /></span><span style="color: #007700">};
<br />
<br /></span><span style="color: #0000BB">enum
<br /></span><span style="color: #007700">{
<br /> </span><span style="color: #0000BB">ADD_BY_WEAPONBOX</span><span style="color: #007700">,
<br /> </span><span style="color: #0000BB">ADD_BY_ARMORY_ENTITY</span><span style="color: #007700">,
<br /> </span><span style="color: #0000BB">ADD_BY_BUYZONE
<br /></span><span style="color: #007700">};
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Called when weapon deployed.
<br /> *
<br /> * @param id Player index.
<br /> * @param weapon Weapon entity index.
<br /> * @param weaponid CSW_ const.
<br /> */
<br /></span><span style="color: #0000BB">forward cs_weapon_deploy</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weapon</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Called when weapon holstered.
<br /> *
<br /> * @param id Player index.
<br /> * @param weapon Weapon entity index.
<br /> * @param weaponid CSW_ const.
<br /> */
<br /></span><span style="color: #0000BB">forward cs_weapon_holster</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weapon</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Called when weapon droped.
<br /> * Forward should return WEAPON_BLOCK_PICKUP for block pickup
<br /> *
<br /> * @param id Player index.
<br /> * @param weaponbox Weaponbox entity index.
<br /> * @param weapon Weapon entity index.
<br /> * @param weaponid CSW_ const.
<br /> */
<br /></span><span style="color: #0000BB">forward cs_weapon_can_pickup</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponbox</span><span style="color: #007700">, </span><span style="color: #0000BB">weapon</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Called when weapon droped.
<br /> * Forward should return WEAPON_MODEL_CHANGED if weaponbox model changed
<br /> *
<br /> * @param id Player index.
<br /> * @param weaponbox Weaponbox entity index.
<br /> * @param weapon Weapon entity index.
<br /> * @param weaponid CSW_ const.
<br /> */
<br /></span><span style="color: #0000BB">forward cs_weapon_drop</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponbox</span><span style="color: #007700">, </span><span style="color: #0000BB">weapon</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Called when weapon added to player.
<br /> *
<br /> * @param id Player index.
<br /> * @param weapon Weapon entity index.
<br /> * @param weaponid CSW_ const.
<br /> * @param type Add type.
<br /> */
<br /></span><span style="color: #0000BB">forward cs_weapon_add_to_player</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weapon</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">, </span><span style="color: #0000BB">type</span><span style="color: #007700">);
<br /></span><span style="color: #0000BB"></span>
</span>
</code><!-- php buffer end -->
</div>
</code>
<hr />
</div>
</div>weapon_skin_system.inc<br /><div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">PHP Code:</div>
<div class="alt2">
<hr />
<code style="white-space:nowrap">
<div dir="ltr" style="text-align:left;">
<!-- php buffer start --><code><span style="color: #000000">
<span style="color: #0000BB"></span><span style="color: #FF8000">/**
<br /> * Called when load skins from file.
<br /> *
<br /> * @param index Skin index
<br /> * @param weaponid Skin CSW_ const
<br /> * @param name Skin name
<br /> */
<br /></span><span style="color: #0000BB">forward wss_loaded_skin</span><span style="color: #007700">(</span><span style="color: #0000BB">index</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">, </span><span style="color: #0000BB">name</span><span style="color: #007700">[]);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Get weapon skin.
<br /> *
<br /> * @param weapon Weapon enity index
<br /> */
<br /></span><span style="color: #0000BB">native wss_get_weapon_skin_index</span><span style="color: #007700">(</span><span style="color: #0000BB">weapon</span><span style="color: #007700">);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Get skin name by index.
<br /> *
<br /> * @param skin_index Skin index
<br /> * @param name String for name
<br /> * @param len Max string len
<br /> */
<br /></span><span style="color: #0000BB">native wss_get_skin_name</span><span style="color: #007700">(</span><span style="color: #0000BB">skin_index</span><span style="color: #007700">, </span><span style="color: #0000BB">name</span><span style="color: #007700">[], </span><span style="color: #0000BB">len</span><span style="color: #007700">);
<br />
<br /></span><span style="color: #FF8000">/**
<br /> * Change player weapon skin.
<br /> * If weaponid is NULL then reset all player skins.
<br /> *
<br /> * wss_set_user_skin(id, 0) - reset all player's skins
<br /> * wss_set_user_skin(id, CSW_AK47) - reset only ak47 skin
<br /> *
<br /> * @param id Player index
<br /> * @param weaponid Weapon CSW_ const
<br /> * @param skin_index Skin index from wss_loaded_skin()
<br /> */
<br /></span><span style="color: #0000BB">native wss_set_user_skin</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">, </span><span style="color: #0000BB">skin_index </span><span style="color: #007700">= </span><span style="color: #0000BB">0</span><span style="color: #007700">);
<br /></span><span style="color: #0000BB"></span>
</span>
</code><!-- php buffer end -->
</div>
</code>
<hr />
</div>
</div><b>Example:</b><br /><div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">PHP Code:</div>
<div class="alt2">
<hr />
<code style="white-space:nowrap">
<div dir="ltr" style="text-align:left;">
<!-- php buffer start --><code><span style="color: #000000">
<span style="color: #0000BB"></span><span style="color: #FF8000">#include <amxmodx>
<br />#include <weapon_models_api>
<br />#include <weapon_skin_system>
<br />
<br />#define PLUGIN "Weapon Skins: Addon"
<br />#define VERSION "0.1"
<br />#define AUTHOR "Mistrick"
<br />
<br />#pragma semicolon 1
<br />
<br /></span><span style="color: #0000BB">enum SkinInfo
<br /></span><span style="color: #007700">{
<br /> </span><span style="color: #0000BB">SkinIndex</span><span style="color: #007700">,
<br /> </span><span style="color: #0000BB">SkinWeaponid
<br /></span><span style="color: #007700">};
<br />
<br /></span><span style="color: #0000BB">enum Skins
<br /></span><span style="color: #007700">{
<br /> </span><span style="color: #0000BB">SKIN_FRONTSIDE
<br /></span><span style="color: #007700">};
<br />
<br />new </span><span style="color: #0000BB">g_iWeaponSkins</span><span style="color: #007700">[</span><span style="color: #0000BB">Skins</span><span style="color: #007700">][</span><span style="color: #0000BB">SkinInfo</span><span style="color: #007700">];
<br />
<br />public </span><span style="color: #0000BB">plugin_init</span><span style="color: #007700">()
<br />{
<br /> </span><span style="color: #0000BB">register_plugin</span><span style="color: #007700">(</span><span style="color: #0000BB">PLUGIN</span><span style="color: #007700">, </span><span style="color: #0000BB">VERSION</span><span style="color: #007700">, </span><span style="color: #0000BB">AUTHOR</span><span style="color: #007700">);
<br />}
<br />
<br />public </span><span style="color: #0000BB">wss_loaded_skin</span><span style="color: #007700">(</span><span style="color: #0000BB">index</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">, </span><span style="color: #0000BB">name</span><span style="color: #007700">[])
<br />{
<br /> </span><span style="color: #FF8000">// Skin name from weapon_skins.ini
<br /> </span><span style="color: #007700">if(</span><span style="color: #0000BB">equal</span><span style="color: #007700">(</span><span style="color: #0000BB">name</span><span style="color: #007700">, </span><span style="color: #DD0000">"AK-47 Frontside"</span><span style="color: #007700">))
<br /> {
<br /> </span><span style="color: #0000BB">g_iWeaponSkins</span><span style="color: #007700">[</span><span style="color: #0000BB">SKIN_FRONTSIDE</span><span style="color: #007700">][</span><span style="color: #0000BB">SkinIndex</span><span style="color: #007700">] = </span><span style="color: #0000BB">index</span><span style="color: #007700">;
<br /> </span><span style="color: #0000BB">g_iWeaponSkins</span><span style="color: #007700">[</span><span style="color: #0000BB">SKIN_FRONTSIDE</span><span style="color: #007700">][</span><span style="color: #0000BB">SkinWeaponid</span><span style="color: #007700">] = </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">;
<br /> }
<br />}
<br />
<br />public </span><span style="color: #0000BB">client_putinserver</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">)
<br />{
<br /> if(</span><span style="color: #0000BB">get_user_flags</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">) & </span><span style="color: #0000BB">ADMIN_LEVEL_H</span><span style="color: #007700">)
<br /> {
<br /> </span><span style="color: #0000BB">wss_set_user_skin</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">g_iWeaponSkins</span><span style="color: #007700">[</span><span style="color: #0000BB">SKIN_FRONTSIDE</span><span style="color: #007700">][</span><span style="color: #0000BB">SkinWeaponid</span><span style="color: #007700">], </span><span style="color: #0000BB">g_iWeaponSkins</span><span style="color: #007700">[</span><span style="color: #0000BB">SKIN_FRONTSIDE</span><span style="color: #007700">][</span><span style="color: #0000BB">SkinIndex</span><span style="color: #007700">]);
<br /> }
<br />}
<br />
<br />public </span><span style="color: #0000BB">cs_weapon_can_pickup</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponbox</span><span style="color: #007700">, </span><span style="color: #0000BB">weapon</span><span style="color: #007700">, </span><span style="color: #0000BB">weaponid</span><span style="color: #007700">)
<br />{
<br /> new </span><span style="color: #0000BB">skin </span><span style="color: #007700">= </span><span style="color: #0000BB">wss_get_weapon_skin_index</span><span style="color: #007700">(</span><span style="color: #0000BB">weapon</span><span style="color: #007700">);
<br />
<br /> if(!</span><span style="color: #0000BB">skin</span><span style="color: #007700">)
<br /> {
<br /> return </span><span style="color: #0000BB">WEAPON_CAN_PICKUP</span><span style="color: #007700">;
<br /> }
<br />
<br /> if(</span><span style="color: #0000BB">skin </span><span style="color: #007700">== </span><span style="color: #0000BB">g_iWeaponSkins</span><span style="color: #007700">[</span><span style="color: #0000BB">SKIN_FRONTSIDE</span><span style="color: #007700">][</span><span style="color: #0000BB">SkinIndex</span><span style="color: #007700">] && ~</span><span style="color: #0000BB">get_user_flags</span><span style="color: #007700">(</span><span style="color: #0000BB">id</span><span style="color: #007700">) & </span><span style="color: #0000BB">ADMIN_LEVEL_H</span><span style="color: #007700">)
<br /> {
<br /> return </span><span style="color: #0000BB">WEAPON_BLOCK_PICKUP</span><span style="color: #007700">;
<br /> }
<br />
<br /> return </span><span style="color: #0000BB">WEAPON_CAN_PICKUP</span><span style="color: #007700">;
<br />}
<br /></span><span style="color: #0000BB"></span>
</span>
</code><!-- php buffer end -->
</div>
</code>
<hr />
</div>
</div><b>Changelog:</b> <a href="https://github.com/M...aponSkinSystem"target="_blank">GitHub</a></div>
<br /> <div style="padding:6px">
<fieldset class="fieldset">
<legend>Attached Files</legend>
<table cellpadding="0" cellspacing="3" border="0">
<tr>
<td><img class="inlineimg" src="https://forums.allie...attach/zip.gif"alt="File Type: zip" width="16" height="16" border="0" style="vertical-align:baseline" /></td>
<td>
<a href="https://forums.allie...v0.6-18.zip</a>(6.7 KB)
</td>
</tr>
</table>
</fieldset>
</div>
Wyświetl pełny artykuł
Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse

Weapon Skin System [API]
Temat rozp. Adminek AMXX.PL, 19.12.2016 18:25
Brak odpowiedzi do tego tematu
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych