Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Autorius: KAT
- * Versija: 1.0
- * Išleidimas: 2013/06/06
- * Paskutinis atnaujinimas: N/A
- */
- /*
- FUNKCIJOS:
- native Pickup(sP_id,Float:pP_x,Float:pP_y,Float:pP_z, pP_type, pP_model, pP_virtual); - naudojama sukurti Pickup'ui
- native ReloadPickups(); - Perkrauna visus Pickup'us
- native ReloadPickup(_pID); - Perkrauna pickup'ą pagal jo ID
- native HidePickup(_pID); - paslepia Pickup'ą ( jo nerodo žaidėjams )
- native ShowPickup(_pID); - parodo Pickup'ą žaidėjams
- native HidePickupForTime(_pID, _pSeconds); - paslėpia pickup'ą kažkuriam laikui ( pvz.: 10 sek )
- native ChangePickupModel(_pID, _p_Model); - pakeičiai pickup'o modelį ir iškarto realod'ina pickupą
- native ChangePickupType(_pID, _p_Type); - pakeičiai pickup'o tipą ir iškarto realod'ina pickupą
- native GetNearestPickupFromPoint(Float:x1, Float:y1, Float:z1, Float: dist = 100.0); - išgauna arčiausiai esantį pickup'ą pagal nurodytą atstumą ( default - 100.0 )
- native IsValidPickup(_pID); - patikrina ar pickup'as yra egzistuojantis pagal nurodytą ID
- */
- enum _pDATA
- {
- s_id,
- s_pickup,
- Float:p_x,
- Float:p_y,
- Float:p_z,
- p_type,
- p_model,
- p_virtual,
- bool:hidden
- }
- new _pickup[MAX_PICKUPS][_pDATA];
- stock Pickup(sP_id,Float:pP_x,Float:pP_y,Float:pP_z, pP_type, pP_model, pP_virtual)
- {
- _pickup[sP_id][s_id] = sP_id;
- _pickup[sP_id][s_pickup] = CreatePickup(pP_model, pP_type, pP_x, pP_y, pP_z, pP_virtual);
- _pickup[sP_id][p_x] = pP_x;
- _pickup[sP_id][p_y] = pP_y;
- _pickup[sP_id][p_z] = pP_z;
- _pickup[sP_id][p_type] = pP_type;
- _pickup[sP_id][p_model] = pP_model;
- _pickup[sP_id][p_virtual] = pP_virtual;
- return printf("Pickup( ID: %i, model: %i ) pakrautas!",sP_id,pP_model);
- }
- stock ReloadPickups()
- {
- for(new p = 0; p < MAX_PICKUPS; p++)
- {
- DestroyPickup(_pickup[p][s_pickup]);
- _pickup[p][s_pickup] = CreatePickup(_pickup[p][p_model], _pickup[p][p_type], _pickup[p][p_x], _pickup[p][p_y], _pickup[p][p_z], _pickup[p][p_virtual]);
- printf("Perkrauta %i pickupų!");
- }
- }
- stock ReloadPickup(_pID)
- {
- if(!IsValidPickup(_pID)) return 0;
- DestroyPickup(_pickup[_pID][s_pickup]);
- _pickup[_pID][s_pickup] = CreatePickup(_pickup[_pID][p_model], _pickup[_pID][p_type], _pickup[_pID][p_x], _pickup[_pID][p_y], _pickup[_pID][p_z], _pickup[_pID][p_virtual]);
- printf("Perkrautas ID: %i pickup'as!");
- return 1;
- }
- stock HidePickup(_pID)
- {
- if(!IsValidPickup(_pID)) return 0;
- DestroyPickup(_pickup[_pID][s_pickup]);
- _pickup[_pID][hidden]=true;
- printf("Paslėptas ID: %i pickup'as!");
- return 1;
- }
- stock ShowPickup(_pID)
- {
- if(!IsValidPickup(_pID)) return 0;
- if(!_pickup[_pID][hidden]) return 0;
- _pickup[_pID][s_pickup] = CreatePickup(_pickup[_pID][p_model], _pickup[_pID][p_type], _pickup[_pID][p_x], _pickup[_pID][p_y], _pickup[_pID][p_z], _pickup[_pID][p_virtual]);
- printf("Parodytas ID: %i pickup'as!");
- return 1;
- }
- stock HidePickupForTime(_pID, _pSeconds)
- {
- if(!IsValidPickup(_pID)) return 0;
- DestroyPickup(_pickup[_pID][s_pickup]);
- _pickup[_pID][hidden]=true;
- SetTimerEx("_ShowPickupAfterTime",_pSeconds*1000,false,"d",_pID);
- printf("Paslėptas ID: %i pickup'as %i sekundems!",_pSeconds);
- return 1;
- }
- forward _ShowPickupAfterTime(_pID);
- public _ShowPickupAfterTime(_pID)
- {
- if(!IsValidPickup(_pID)) return 0;
- if(!_pickup[_pID][hidden]) return 0;
- _pickup[_pID][s_pickup] = CreatePickup(_pickup[_pID][p_model], _pickup[_pID][p_type], _pickup[_pID][p_x], _pickup[_pID][p_y], _pickup[_pID][p_z], _pickup[_pID][p_virtual]);
- printf("Parodytas ID: %i pickup'as po taimerio!");
- return 1;
- }
- stock ChangePickupModel(_pID, _p_Model)
- {
- if(!IsValidPickup(_pID)) return 0;
- if(_pickup[_pID][hidden]) return 0;
- _pickup[_pID][p_model] = _p_Model;
- ReloadPickup(_pID);
- return 1;
- }
- stock ChangePickupType(_pID, _p_Type)
- {
- if(!IsValidPickup(_pID)) return 0;
- if(_pickup[_pID][hidden]) return 0;
- _pickup[_pID][p_type] = _p_Type;
- ReloadPickup(_pID);
- return 1;
- }
- stock GetNearestPickupFromPoint(Float:x1, Float:y1, Float:z1, Float: dist = 100.0)
- {
- new targetid = -1;
- new Float:tmpdis;
- for( new p = 0; p < MAX_PICKUPS; p++)
- {
- tmpdis = floatsqroot(floatpower(floatabs(floatsub(_pickup[p][p_x],x1)),2)+floatpower(floatabs(floatsub(_pickup[p][p_y],y1)),2)+floatpower(floatabs(floatsub(_pickup[p][p_z],z1)),2));
- if(tmpdis < dist)
- {
- dist = tmpdis;
- targetid = p;
- }
- }
- return targetid;
- }
- stock IsValidPickup(_pID)
- {
- for( new p = 0; p < MAX_PICKUPS; p++)
- {
- if(_pickup[p][s_id] == _pID)
- {
- return true;
- }
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement