PHP код:
public OnPlayerUpdate(playerid)
{
if(!IsPlayerNPC(playerid))
{
if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_DUCK && GetVictimTimerStatus[playerid] == 0)
{
GetVictimDetectRange[playerid] = (ZOMBIE_DETECT / 4);
GetVictimTimerStatus[playerid] = 1;
GetVictimResetTimer[playerid] = SetTimerEx("ResetDetectRange", 5000, false, "i", playerid);
}
static Keys,ud,lr;
GetPlayerKeys(playerid,Keys,ud,lr);
new animname[32], animlib[32];
if(GetPlayerAnimationIndex(playerid))
{
GetAnimationName(GetPlayerAnimationIndex(playerid), animlib, sizeof(animlib), animname, sizeof(animname));
if(!strcmp(animname, "FALL_SKYDIVE", true))
{
pInfo[playerid][IsPlayerCleoFly]++;
pInfo[playerid][pCleoFlyWarning]++;
if(pInfo[playerid][IsPlayerCleoFly] >= 300)
{
if(pInfo[playerid][pCleoFlyWarning] >= 6)
{
if(GetPlayerWeapon(playerid) != 46)
{
jBan(playerid, -1, "Fly Hack", 0);
}
}
}
}
}
if(GetPlayerAnimationIndex(playerid))
{
GetAnimationName(GetPlayerAnimationIndex(playerid), animlib, sizeof(animlib), animname, sizeof(animname));
if(!strcmp(animname, "JUMP_glide", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,3);
DayZSA_SetPlayerEyeLevel(playerid,3);
}
if(!strcmp(animname, "JUMP_land", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,2);
DayZSA_SetPlayerEyeLevel(playerid,1);
}
if(!strcmp(animname, "run_player", true) || !strcmp(animname, "run_right", true))
{
if(ud == KEY_UP)
{
DayZSA_SetPlayerNoiseLevel(playerid,4);
DayZSA_SetPlayerEyeLevel(playerid,3);
}
else
{
DayZSA_SetPlayerNoiseLevel(playerid,3);
DayZSA_SetPlayerEyeLevel(playerid,3);
}
}
if(!strcmp(animname, "IDLE_stance", true) || !strcmp(animname, "IDLE_armed", true) || !strcmp(animname, "IDLE_tired", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,0);
DayZSA_SetPlayerEyeLevel(playerid,1);
}
if(!strcmp(animname, "Run_stopR", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,1);
DayZSA_SetPlayerEyeLevel(playerid,1);
}
if(!strcmp(animname, "Run_stopR", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,2);
DayZSA_SetPlayerEyeLevel(playerid,1);
}
if(!strcmp(animname, "WEAPON_CROUCH", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,2);
DayZSA_SetPlayerEyeLevel(playerid,1);
}
if(!strcmp(animname, "GUNCROUCHFWD", true))
{
DayZSA_SetPlayerNoiseLevel(playerid,2);
DayZSA_SetPlayerEyeLevel(playerid,2);
}
}
new drunk2 = GetPlayerDrunkLevel(playerid);
if(drunk2 < 100)
{
SetPlayerDrunkLevel(playerid,2000);
}
else
{
if(DLlast[playerid] != drunk2)
{
new fps = DLlast[playerid] - drunk2;
if((fps > 0) && (fps < 200))
FPS2[playerid] = fps;
DLlast[playerid] = drunk2;
}
}
static Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid, X, Y, Z);
if(X >= 99999.0 || Y >= 99999.0 || Z >= 99999.0 || X <= -99999.0 || Y <= -99999.0 || Z <= -99999.0)
{
SendClientMessage(playerid, 0xa9c4e4ff, "Warning: Excessive X, Y, Z has been breached thus last location set.");
SetPlayerPos_Allow(playerid, p_PlayerBuggerX[playerid], p_PlayerBuggerY[playerid], p_PlayerBuggerZ[playerid]);
}
else
{
p_PlayerBuggerX[playerid] = X;
p_PlayerBuggerY[playerid] = Y;
p_PlayerBuggerZ[playerid] = Z;
}
static Float:X2, Float:Y2, Float:Z2;
if(IsPlayerInAnyVehicle(playerid))
{
GetVehicleVelocity(GetPlayerVehicleID(playerid), X2, Y2, Z2);
if(X2 > 3.0 || Y2 > 3.0 || Z2 > 3.0 || X2 < -3.0 || Y2 < -3.0 || Z2 < -3.0)
{
jBan(playerid, -1, "Vehicle Warp Hack (Spin)", 0);
}
}
if(tickcount() - armedbody_pTick[playerid] > 113)
{
new
weaponid[13],weaponammo[13],pArmedWeapon;
pArmedWeapon = GetPlayerWeapon(playerid);
GetPlayerWeaponData(playerid,1,weaponid[1],weaponammo[1]);
GetPlayerWeaponData(playerid,2,weaponid[2],weaponammo[2]);
GetPlayerWeaponData(playerid,4,weaponid[4],weaponammo[4]);
GetPlayerWeaponData(playerid,5,weaponid[5],weaponammo[5]);
#if ARMEDBODY_USE_HEAVY_WEAPON
GetPlayerWeaponData(playerid,7,weaponid[7],weaponammo[7]);
#endif
if(weaponid[1] && weaponammo[1] > 0){
if(pArmedWeapon != weaponid[1]){
if(!IsPlayerAttachedObjectSlotUsed(playerid,5)){
//SetPlayerAttachedObject(playerid,5,GetWeaponModel(weaponid[1]),1, 0.199999, -0.139999, 0.030000, 0.500007, -115.000000, 0.000000, 1.000000, 1.000000, 1.000000);
SetPlayerAttachedObject( playerid, 5, GetWeaponModel(weaponid[1]), 16, -0.195032, 0.120565, -0.052446, 0.000000, 20.250000, 0.000000, 0.968602, 0.904952, 1.110462 );
}
}
else {
if(IsPlayerAttachedObjectSlotUsed(playerid,5)){
RemovePlayerAttachedObject(playerid,5);
}
}
}
else if(IsPlayerAttachedObjectSlotUsed(playerid,5)){
RemovePlayerAttachedObject(playerid,5);
}
if(weaponid[2] && weaponammo[2] > 0){
if(pArmedWeapon != weaponid[2]){
if(!IsPlayerAttachedObjectSlotUsed(playerid,6)){
//SetPlayerAttachedObject(playerid,6,GetWeaponModel(weaponid[2]),8, -0.079999, -0.039999, 0.109999, -90.100006, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000);
SetPlayerAttachedObject(playerid, 6, GetWeaponModel(weaponid[2]), 12, -0.050205, -0.069741, -0.080912, 20.179998, 17.460956, 354.668945, 1.150907, 1.061156, 0.884258 );
}
}
else {
if(IsPlayerAttachedObjectSlotUsed(playerid,6)){
RemovePlayerAttachedObject(playerid,6);
}
}
}
else if(IsPlayerAttachedObjectSlotUsed(playerid,6)){
RemovePlayerAttachedObject(playerid,6);
}
if(weaponid[4] && weaponammo[4] > 0){
if(pArmedWeapon != weaponid[4]){
if(!IsPlayerAttachedObjectSlotUsed(playerid,7)){
SetPlayerAttachedObject(playerid,7,GetWeaponModel(weaponid[4]),7, 0.000000, -0.100000, -0.080000, -95.000000, -10.000000, 0.000000, 1.000000, 1.000000, 1.000000);
}
}
else {
if(IsPlayerAttachedObjectSlotUsed(playerid,7)){
RemovePlayerAttachedObject(playerid,7);
}
}
}
else if(IsPlayerAttachedObjectSlotUsed(playerid,7)){
RemovePlayerAttachedObject(playerid,7);
}
if(weaponid[5] && weaponammo[5] > 0){
if(pArmedWeapon != weaponid[5]){
if(!IsPlayerAttachedObjectSlotUsed(playerid,8)){
SetPlayerAttachedObject(playerid,8,GetWeaponModel(weaponid[5]),1, 0.200000, -0.119999, -0.059999, 0.000000, 206.000000, 0.000000, 1.000000, 1.000000, 1.000000);
}
}
else {
if(IsPlayerAttachedObjectSlotUsed(playerid,8)){
RemovePlayerAttachedObject(playerid,8);
}
}
}
else if(IsPlayerAttachedObjectSlotUsed(playerid,8)){
RemovePlayerAttachedObject(playerid,8);
}
#if ARMEDBODY_USE_HEAVY_WEAPON
if(weaponid[7] && weaponammo[7] > 0){
if(pArmedWeapon != weaponid[7]){
if(!IsPlayerAttachedObjectSlotUsed(playerid,9)){
SetPlayerAttachedObject(playerid,9,GetWeaponModel(weaponid[7]),1,-0.100000, 0.000000, -0.100000, 84.399932, 112.000000, 10.000000, 1.099999, 1.000000, 1.000000);
}
}
else {
if(IsPlayerAttachedObjectSlotUsed(playerid,9)){
RemovePlayerAttachedObject(playerid,9);
}
}
}
else if(IsPlayerAttachedObjectSlotUsed(playerid,9)){
RemovePlayerAttachedObject(playerid,9);
}
#endif
armedbody_pTick[playerid] = tickcount();
}
}
switch(GetPlayerWeapon(playerid))
{
case 44, 45:
{
new keys, ud, lr;
GetPlayerKeys(playerid, keys, ud, lr);
if((keys & KEY_FIRE) && (!IsPlayerInAnyVehicle(playerid)))
{
return 0;
}
}
}
return 1;
}