Jump to content
  • 0

ArmedbodyFS


Flavius88

Question

Nick:Flavius88

Problema:Armedbody filterscript

Erori/Warning:-

Lini/Script:

[pawn]#include <a_samp>

#include <JunkBuster>

#define ARMEDBODY_USE_HEAVY_WEAPON (false)

static

armedbody_pTick[MAX_PLAYERS];

public OnPlayerUpdate(playerid){

if(GetTickCount() - armedbody_pTick[playerid] > 113){ //prefix check itter

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] > 0){

if(pArmedWeapon != weaponid[1]){

if(!IsPlayerAttachedObjectSlotUsed(playerid,0)){

SetPVarInt(playerid, "arma2", SetPlayerAttachedObject(playerid,0,GetWeaponModel(weaponid[1]),1, 0.199999, -0.139999, 0.030000, 0.500007, -115.000000, 0.000000, 1.000000, 1.000000, 1.000000));

}

}

else {

if(IsPlayerAttachedObjectSlotUsed(playerid,0)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma1"),0);

}

}

}

else if(IsPlayerAttachedObjectSlotUsed(playerid,0)){

RemovePlayerAttachedObject(playerid,0);

}

if(weaponid[2] > 0){

if(pArmedWeapon != weaponid[2]){

if(!IsPlayerAttachedObjectSlotUsed(playerid,1)){

SetPVarInt(playerid, "arma2", SetPlayerAttachedObject(playerid,1,GetWeaponModel(weaponid[2]),8, -0.079999, -0.039999, 0.109999, -90.100006, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000));

}

}

else {

if(IsPlayerAttachedObjectSlotUsed(playerid,1)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma2"),1);

}

}

}

else if(IsPlayerAttachedObjectSlotUsed(playerid,1)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma2"),1);

}

if(weaponid[4] > 0){

if(pArmedWeapon != weaponid[4]){

if(!IsPlayerAttachedObjectSlotUsed(playerid,2)){

SetPVarInt(playerid, "arma3", SetPlayerAttachedObject(playerid,2,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,2)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma3"),2);

}

}

}

else if(IsPlayerAttachedObjectSlotUsed(playerid,2)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma3"),2);

}

if(weaponid[5] > 0){

if(pArmedWeapon != weaponid[5]){

if(!IsPlayerAttachedObjectSlotUsed(playerid,3)){

SetPVarInt(playerid, "arma4", SetPlayerAttachedObject(playerid,3,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,3)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma4"),3);

}

}

}

else if(IsPlayerAttachedObjectSlotUsed(playerid,3)){

RemovePlayerAttachedObject(GetPVarInt(playerid, "arma4"),3);

}

#if ARMEDBODY_USE_HEAVY_WEAPON

if(weaponid[7] > 0){

if(pArmedWeapon != weaponid[7]){

if(!IsPlayerAttachedObjectSlotUsed(playerid,4)){

SetPlayerAttachedObject(playerid,4,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,4)){

RemovePlayerAttachedObject(playerid,4);

}

}

}

else if(IsPlayerAttachedObjectSlotUsed(playerid,4)){

RemovePlayerAttachedObject(playerid,4);

}

#endif

armedbody_pTick[playerid] = GetTickCount();

}

return true;

}

//by Double-O-Seven

stock GetWeaponModel(weaponid)

{

switch(weaponid)

{

    case 1:

        return 331;

case 2..8:

    return weaponid+331;

        case 9:

    return 341;

case 10..15:

return weaponid+311;

case 16..18:

    return weaponid+326;

case 22..29:

    return weaponid+324;

case 30,31:

    return weaponid+325;

case 32:

    return 372;

case 33..45:

    return weaponid+324;

case 46:

    return 371;

}

return 0;

}[/pawn]

Ai incercat sa rezolvi singur ?:Da

Scriptul functioneaza bine,armele se vad cum trebuie pe corp.Problema este ca atunci cand selectez o arma ea imi apare in mana,normal,dar nu dispare de pe corp.

Link to comment
Share on other sites

6 answers to this question

Recommended Posts

[pawn]#include <a_samp>

static

  armedbody_pTick[MAX_PLAYERS];

public OnFilterScriptInit(){

  printf("=====================================================================");

  printf("This is a part of a OpenGTA subject, visit opengta.org for more info.");

  printf("FilterScript Name: Armed body");

  printf("Description:Attatch weapond to player's body");

  printf("Author:yezizhu");

  printf("Special thanks:Double-O-Seven, Brian.");

  printf("Contact author: [email protected]");

  printf("=====================================================================");

  return true;

}

public OnFilterScriptExit(){

  return true;

}

public OnPlayerUpdate(playerid){

  if(GetTickCount() - armedbody_pTick[playerid] > 113){ //prefix check itter

      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]);

      GetPlayerWeaponData(playerid,7,weaponid[7],weaponammo[7]);

      if(weaponid[1] && weaponammo[1] > 0){

        if(pArmedWeapon != weaponid[1]){

            if(!IsPlayerAttachedObjectSlotUsed(playerid,0)){

              SetPlayerAttachedObject(playerid,0,GetWeaponModel(weaponid[1]),1, 0.199999, -0.139999, 0.030000, 0.500007, -115.000000, 0.000000, 1.000000, 1.000000, 1.000000);

            }

        }

        else {

            if(IsPlayerAttachedObjectSlotUsed(playerid,0)){

              RemovePlayerAttachedObject(playerid,0);

            }

        }

      }

      else if(IsPlayerAttachedObjectSlotUsed(playerid,0)){

        RemovePlayerAttachedObject(playerid,0);

      }

      if(weaponid[2] && weaponammo[2] > 0){

        if(pArmedWeapon != weaponid[2]){

            if(!IsPlayerAttachedObjectSlotUsed(playerid,1)){

              SetPlayerAttachedObject(playerid,1,GetWeaponModel(weaponid[2]),8, -0.079999, -0.039999, 0.109999, -90.100006, 0.000000, 0.000000, 1.000000, 1.000000, 1.000000);

            }

        }

        else {

            if(IsPlayerAttachedObjectSlotUsed(playerid,1)){

              RemovePlayerAttachedObject(playerid,1);

            }

        }

      }

      else if(IsPlayerAttachedObjectSlotUsed(playerid,1)){

        RemovePlayerAttachedObject(playerid,1);

      }

      if(weaponid[4] && weaponammo[4] > 0){

        if(pArmedWeapon != weaponid[4]){

            if(!IsPlayerAttachedObjectSlotUsed(playerid,2)){

              SetPlayerAttachedObject(playerid,2,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,2)){

              RemovePlayerAttachedObject(playerid,2);

            }

        }

      }

      else if(IsPlayerAttachedObjectSlotUsed(playerid,2)){

        RemovePlayerAttachedObject(playerid,2);

      }

      if(weaponid[5] && weaponammo[5] > 0){

        if(pArmedWeapon != weaponid[5]){

            if(!IsPlayerAttachedObjectSlotUsed(playerid,3)){

              SetPlayerAttachedObject(playerid,3,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,3)){

              RemovePlayerAttachedObject(playerid,3);

            }

        }

      }

      else if(IsPlayerAttachedObjectSlotUsed(playerid,3)){

        RemovePlayerAttachedObject(playerid,3);

      }

      if(weaponid[7] && weaponammo[7] > 0){

        if(pArmedWeapon != weaponid[7]){

            if(!IsPlayerAttachedObjectSlotUsed(playerid,4)){

              SetPlayerAttachedObject(playerid,4,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,4)){

              RemovePlayerAttachedObject(playerid,4);

            }

        }

      }

      else if(IsPlayerAttachedObjectSlotUsed(playerid,4)){

        RemovePlayerAttachedObject(playerid,4);

      }

      armedbody_pTick[playerid] = GetTickCount();

  }

  return true;

}

 

 

//by Double-O-Seven

stock GetWeaponModel(weaponid)

{

  switch(weaponid)

  {

      case 1:

          return 331;

      case 2..8:

          return weaponid+331;

        case 9:

          return 341;

      case 10..15:

        return weaponid+311;

      case 16..18:

          return weaponid+326;

      case 22..29:

          return weaponid+324;

      case 30,31:

          return weaponid+325;

      case 32:

          return 372;

      case 33..45:

          return weaponid+324;

      case 46:

          return 371;

  }

  return 0;

}[/pawn]

Am inlocuit acel fs cu acesta, aici nu apar deloc armele dar cred ca functioneaza, in trecut stiu ca am avut aceeasi problema fiindca trebuia sa modific dupa armele infinite(pt acelea vreau sa il fac). Unde trb sa modific sa mearga pt armele infinite?

Link to comment
Share on other sites

Din cate vazui la prima vedere, are doar conditia ca arma sa aiba munitia mai mare ca 0.

Ar fi bine sa folosesti gloantele normale, iar cand ajunge la 1 glond sa ii pui iar 999 de gloante.

Oricum am auzit de gloante infinite, eu le puteam cu "999" si cu o comanda care le primea player-ul.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.