Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Simple Script Item By NhatNguyen{Vinpure}
- */
- #include <a_samp>
- #include <streamer>
- #include <zcmd>
- //=================//
- #define MAX_DROP_ITEMS 1000
- #define PRESSED(%0) \
- (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
- //=================//
- new DropObject[MAX_DROP_ITEMS];
- new Text3D:Label[MAX_DROP_ITEMS];
- //=================//
- enum ItemData
- {
- ItemModel,//ModelID das
- Float:ItemPosX,
- Float:ItemPosY,
- Float:ItemPosZ,
- Float:ItemRotX,
- Float:ItemRotY,
- Float:ItemRotZ,
- ItemVWorld,
- ItemInterior,
- };
- new ItemInfo[MAX_DROP_ITEMS][ItemData];
- //=================//
- //=================//
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print("Item SYSTEM By VinPure\n");
- print("--------------------------------------\n");
- return 1;
- }
- //=================//
- //=================//
- //You can use Mapeditor to create object
- // You can Create Random Item
- /* EX:
- new ItemRandom[3] = {
- 1234,1265,1548
- };
- And
- CreateItem(ItemRandom[random(2)], Float:X, Float:Y, Float:Z,Float:RX,Float:RY,Float:RZ, world);
- Remember add in stock pickupitem(playerid)
- if(ItemInfo[i][ItemModel] == IDMODEL)
- */
- stock CreateItem(ItemID, Float:X, Float:Y, Float:Z,Float:RX,Float:RY,Float:RZ, world, interior)
- {
- if(ItemID != 0)
- {
- for(new i = 0; i < sizeof(ItemInfo); i++)
- {
- if(ItemInfo[i][ItemPosX] == 0.0 && ItemInfo[i][ItemPosY] == 0.0 && ItemInfo[i][ItemPosZ] == 0.0)
- {
- ItemInfo[i][ItemModel] = ItemID;
- ItemInfo[i][ItemPosX] = X;
- ItemInfo[i][ItemPosY] = Y;
- ItemInfo[i][ItemPosZ] = Z;
- ItemInfo[i][ItemRotX] = RX;
- ItemInfo[i][ItemRotY] = RY;
- ItemInfo[i][ItemRotZ] = RZ;
- ItemInfo[i][ItemVWorld] = world;
- ItemInfo[i][ItemInterior] = interior;
- Label[i] = Create3DTextLabel("Item 'Press Y' to take it", 0x008080FF,X,Y,Z, 10.0,world, 0);
- DropObject[i] = CreateDynamicObject(ItemID, X, Y, Z,RX,RY,RZ, world);
- return 1;
- }
- }
- return 1;
- }
- return 1;
- }
- stock DropItem(ItemID, Float:X, Float:Y, Float:Z, world, interior)
- {
- if(ItemID != 0)
- {
- for(new i = 0; i < sizeof(ItemInfo); i++)
- {
- if(ItemInfo[i][ItemPosX] == 0.0 && ItemInfo[i][ItemPosY] == 0.0 && ItemInfo[i][ItemPosZ] == 0.0)
- {
- ItemInfo[i][ItemModel] = ItemID;
- ItemInfo[i][ItemPosX] = X;
- ItemInfo[i][ItemPosY] = Y;
- ItemInfo[i][ItemPosZ] = Z;
- ItemInfo[i][ItemVWorld] = world;
- ItemInfo[i][ItemInterior] = interior;
- Label[i] = Create3DTextLabel("Item 'Press Y' to take it", 0x008080FF,X,Y,Z, 10.0,world, 0);
- DropObject[i] = CreateDynamicObject(ItemID, X, Y, Z-1, 80.0, 0.0, 0.0, world);
- return 1;
- }
- }
- return 1;
- }
- return 1;
- }
- stock PickupItem(playerid)
- {
- for(new i = 0; i < sizeof(ItemInfo); i++)
- {
- if (IsPlayerInRangeOfPoint(playerid, 2.0,ItemInfo[i][ItemPosX],ItemInfo[i][ItemPosY],ItemInfo[i][ItemPosZ]))
- {
- if(GetPlayerVirtualWorld(playerid) == ItemInfo[i][ItemVWorld] && GetPlayerInterior(playerid) == ItemInfo[i][ItemVWorld])
- {
- ItemInfo[i][ItemPosX] = 0.0;
- ItemInfo[i][ItemPosY] = 0.0;
- ItemInfo[i][ItemPosZ] = 0.0;
- ItemInfo[i][ItemRotX] = 0.0;
- ItemInfo[i][ItemRotY] = 0.0;
- ItemInfo[i][ItemRotZ] = 0.0;
- if(ItemInfo[i][ItemModel] == 3658)
- {
- Delete3DTextLabel(Label[i]);
- DestroyDynamicObject(DropObject[i]);
- //Add this Item to Inventory
- SendClientMessage(playerid,-1,"3658");
- }
- //You can add More Item
- //if(ItemInfo[i][ItemModel] == Model Object
- //EX:
- if(ItemInfo[i][ItemModel] == 1609)
- {
- Delete3DTextLabel(Label[i]);
- DestroyDynamicObject(DropObject[i]);
- SendClientMessage(playerid,-1,"1609");
- }
- return 1;
- }
- }
- }
- return 1;
- }
- //=================//
- //=================//
- public OnFilterScriptExit()
- {
- return 1;
- }
- //=================//
- //=================//
- CMD:test1(playerid, params[])
- {
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- DropItem(3658,X,Y,Z,GetPlayerVirtualWorld(playerid),GetPlayerInterior(playerid));
- // Item id 3658
- return 1;
- }
- CMD:test2(playerid,params[])
- {
- new Float:X,Float:Y,Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- DropItem(1609,X,Y,Z,GetPlayerVirtualWorld(playerid),GetPlayerInterior(playerid));
- return 1;
- }
- //=================//
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if (PRESSED(KEY_YES))
- {
- PickupItem(playerid);
- }
- return 1;
- }
- //=================//
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement