14.07.2016, 18:32
Yeah i've already done it myself with a few defines and gave each gun its own level of recoil and less recoil when crouching, but yours still looks interesting
PHP код:
public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
{
new string[30];
if(Aiming[playerid] == 1)
{
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DUCK)
{
switch(weaponid)
{
case 22:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 23:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 24:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 25:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 26:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 27:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 28:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 29:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 30:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 31:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 32:
{
SetPlayerDrunkLevel(playerid, 2001);
}
case 33:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 34:
{
SetPlayerDrunkLevel(playerid, 2800);
}
}
}
else
{
switch(weaponid)
{
case 22:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 23:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 24:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 25:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 26:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 27:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 28:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 29:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 30:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 31:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 32:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 33:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 34:
{
SetPlayerDrunkLevel(playerid, 2040);
}
case 35:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 36:
{
SetPlayerDrunkLevel(playerid, 2005);
}
case 38:
{
SetPlayerDrunkLevel(playerid, 2001);
}
}
}
format(string, sizeof(string), "Drunk Level: %d", GetPlayerDrunkLevel(playerid));
SendClientMessage(playerid, 0xFFFFFF, string);
}
return 1;
}
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_AIM))
{
Aiming[playerid] = 1;
if(GetPlayerWeapon(playerid) == 34)
{
SetPlayerDrunkLevel(playerid, 2070);
}
}
if(RELEASED(KEY_AIM))
{
Aiming[playerid] = 0;
SetPlayerDrunkLevel(playerid, 0);
}
if(RELEASED(KEY_FIRE))
{
SetPlayerDrunkLevel(playerid, 0);
}
return 1;
}