Welcome, Guest |
You have to register before you can post on our site.
|
Online Users |
There are currently 163 online users. » 1 Member(s) | 160 Guest(s) Bing, Google, ruzky
|
Latest Threads |
Liberty City map
Forum: Pawn Scripting
Last Post: ziyadprogamer
11 hours ago
» Replies: 2
» Views: 2,109
|
GameText styles in open.m...
Forum: Pawn Scripting
Last Post: Miki
Yesterday, 01:25 PM
» Replies: 1
» Views: 22
|
Very Basic SAMP UCP
Forum: Videos and Screenshots
Last Post: bullyalina
Yesterday, 12:43 PM
» Replies: 49
» Views: 12,716
|
Script[gamemodes/gamemode...
Forum: Pawn Scripting
Last Post: Miki
2025-06-27, 05:08 PM
» Replies: 1
» Views: 421
|
NFPA 318 Guidelines for C...
Forum: Videos and Screenshots
Last Post: elvishparker277
2025-06-27, 11:05 AM
» Replies: 0
» Views: 38
|
Want to edit my profile n...
Forum: Chat
Last Post: Hera.
2025-06-26, 08:41 PM
» Replies: 1
» Views: 528
|
Farsi
Forum: Other
Last Post: acc.gangbeni
2025-06-25, 08:21 AM
» Replies: 2
» Views: 3,050
|
Las Venturas Gang Wars - ...
Forum: Advertisements
Last Post: lvgwgta
2025-06-22, 06:47 PM
» Replies: 0
» Views: 43
|
[Request] Linko Gaming Ro...
Forum: General Discussions
Last Post: JamesC
2025-06-20, 07:34 PM
» Replies: 0
» Views: 58
|
RevolutionX DM/Stunt/Race...
Forum: Advertisements
Last Post: DerekZ905
2025-06-18, 03:12 PM
» Replies: 0
» Views: 79
|
|
|
GPS Like GTA 4? |
Posted by: Boxi - 2021-04-20, 03:20 AM - Forum: Pawn Scripting
- Replies (3)
|
 |
I would like to know is there any way to make this style of gps, which is marked on the map the path to follow as seen in the image:?
|
|
|
Special Vehicle |
Posted by: AbyssMorgan - 2021-04-19, 04:24 PM - Forum: Filterscripts
- No Replies
|
 |
Video:
Full presentation is unavailable sorry
Shoft videos:
- SpecialVehicle #1
- SpecialVehicle #2
Screenshots:
https://imgur.com/a/aNOUwfn
Functions:
Code: SpecialVehicle::IsToggledSpecialAbility(vehicleid);
SpecialVehicle::ToggleSpecialAbility(vehicleid,bool:toggle);
SpecialVehicle::GetSpecialVehicleHealth(vehicleid);
SpecialVehicle::SetDefaultDamage(vehicleid);
SpecialVehicle::EnterPlayer(playerid);
SpecialVehicle::ExitPlayer(playerid);
SpecialVehicle::IsPlayerInSpecialVeh(playerid);
SpecialVehicle::GetPlayerSpecialVehType(playerid);
SpecialVehicle::GetVehicleAmmo(vehicleid);
SpecialVehicle::SetVehicleAmmo(vehicleid,ammo);
SpecialVehicle::GetVehicleSecondaryAmmo(vehicleid);
SpecialVehicle::SetVehicleSecondaryAmmo(vehicleid,ammo);
SpecialVehicle::GetDamage(vehicleid);
SpecialVehicle::SetDamage(vehicleid,Float:damage);
SpecialVehicle::GetVehicleDamage(vehicleid);
SpecialVehicle::SetVehicleDamage(vehicleid,Float:vehicle_damage);
SpecialVehicle::IsToggledTrunkInterior();
SpecialVehicle::ToggleTrunkInterior(bool:toggle);
SpecialVehicle::IsToggledTrailerInterior();
SpecialVehicle::ToggleTrailerInterior(bool:toggle);
SpecialVehicle::IsToggledMaverickMinigun(vehicleid);
SpecialVehicle::ToggleMaverickMinigun(vehicleid,bool:toggle);
SpecialVehicle::Create(modelid,Float:x,Float:y,Float:z,Float:angle,color1,color2,respawn_delay = -1,addsiren = 0,worldid = 0,interiorid = 0);
SpecialVehicle::CreateMOC(Float:x,Float:y,Float:z,Float:z_angle,respawn_delay = -1,addsiren = 0,worldid = 0,interiorid = 0);
SpecialVehicle::CreateMOCIncluded(vehicleid,respawn_delay = -1,addsiren = 0);
Callbacks:
Code: OnPlayerEnterVehIntRequest(playerid,vehicleid);
OnPlayerEnterSpecialSeat(playerid);
OnPlayerEnterOppressor(playerid);
OnPlayerUseCannonFail(playerid);
OnPlayerShootRocketFail(playerid);
OnSpecialTrailerNotConnected(playerid);
OnPlayerShootOPRocketFail(playerid);
OnPlayerEnterVehInterior(playerid,vehicleid,with_vehicle);
OnPlayerExitVehInterior(playerid,vehicleid,with_vehicle);
OnSpecialVehicleHasNoAmmo(playerid,vehicleid);
OnSpecialTrailerAttachFail(playerid,vehicleid,trailerid);
Definitions:
Code: WEAPON_VEHICLE_INTERIOR - after vehicle destroyed players inside vehicle interior got death by this reason
SPECIAL_VEH_AMMO_INFINITY - infinity ammo (default)
Informations
Code: By pressing KEY_ACTION you can use Cargobob/Leviathan magnet when you toggling SecialVehicle
Instalation:
Due to high library requipments, make sure you install libs in right order.
Code: #include <streamer>
#include <colandreas>
#include <EVF>
#include <3DTryg>
#include <ExtendedGrenade> //Extension using by Mines and Missile
#include <Mines>
#include <Missile>
#include <VehPara>
#define SPECIAL_VEH_USE_TEAMS //atention if you turn on teams NO_TEAM is treated as an ordinary team
#include <SpecialVehicle>
Example code:
Code: public OnPlayerEnterVehIntRequest(playerid,vehicleid){
//if vehicle is owned by another team you can block enter to interior here by return 0;
return 1;
}
public OnPlayerEnterSpecialSeat(playerid){
GameTextForPlayer(playerid,"Press ~k~~VEHICLE_HORN~ to enable/disable special weapon",2500,4);
return 1;
}
public OnPlayerEnterOppressor(playerid){
GameTextForPlayer(playerid,"Hold ~k~~VEHICLE_FIREWEAPON_ALT~ for use booster",1000,4);
return 1;
}
public OnPlayerUseCannonFail(playerid){
GameTextForPlayer(playerid,"You cannot use cannon now",1000,4);
return 1;
}
public OnPlayerEnterVehInterior(playerid,vehicleid,with_vehicle){
GameTextForPlayer(playerid,"You entered to vehicle interior, press ~k~~GROUP_CONTROL_BWD~ to exit",2500,4);
return 1;
}
public OnPlayerExitVehInterior(playerid,vehicleid,with_vehicle){
GameTextForPlayer(playerid,"You exit from vehicle interior",2500,4);
return 1;
}
public OnPlayerShootRocketFail(playerid){
GameTextForPlayer(playerid,"You can shoot only aerial targets",1000,4);
return 1;
}
public OnSpecialTrailerNotConnected(playerid){
GameTextForPlayer(playerid,"Trailer is not connected to Truck",1000,4);
return 1;
}
public OnPlayerShootOPRocketFail(playerid){
GameTextForPlayer(playerid,"You can shoot only when you on air",1000,4);
return 1;
}
public OnSpecialVehicleHasNoAmmo(playerid,vehicleid){
GameTextForPlayer(playerid,"You don't have ammo",1000,4);
return 1;
}
public OnSpecialTrailerAttachFail(playerid,vehicleid,trailerid){
SendClientMessage(playerid,0xFFFFFFFF,"You can only attach MOC trailer by MOC Truck");
return 1;
}
CMD:e(playerid){
switch(SpecialVehicle::EnterPlayer(playerid)){
case SPECIAL_VEH_ENTER_FAIL: {
SendClientMessage(playerid,0xFFFFFFFF,"You are not near a special vehicle");
}
case SPECIAL_VEH_ENTER_SUCCES: {
}
case SPECIAL_VEH_ENTER_ONFOOT: {
SendClientMessage(playerid,0xFFFFFFFF,"You must be on foot");
}
case SPECIAL_VEH_ENTER_NOT_ALLOWED: {
SendClientMessage(playerid,0xFFFFFFFF,"You can't enter a special vehicle");
}
}
return 1;
}
CMD:spawn_moc(playerid){
new Float:x,Float:y,Float:z,Float:z_angle;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,z_angle);
SpecialVehicle::CreateMOC(x,y,z,z_angle,-1,0,GetPlayerVirtualWorld(playerid),GetPlayerInterior(playerid));
return 1;
}
Demonstration script:
sv_demo.pwn
You can run demonstration script and go to Las Venturas airport for test Special Vehicles
Download:
3DTryg.inc
EVF.inc
Missile.inc
VehPara.inc
Mines.inc
ExtendedGrenade.inc
SpecialVehicle.inc
ColAndreas Plugin
|
|
|
String not showing ingame but printing fine |
Posted by: Snow - 2021-04-18, 09:24 PM - Forum: Pawn Scripting
- Replies (2)
|
 |
So I am trying to show offline stats of a player and?I am fetching the results from the database to show in game but one of the columns do not show in there. But if i print the string, it shows the result there. Basically i fetch a few columns and format them into a string to show in a textdraw. As you can see here,?![[Image: Lk5fs1D.png]](https://i.imgur.com/Lk5fs1D.png)
It shows everything but not the Last Seen which is also fetched from database. On printing the string, this is the result:
Code: ~p~Username: ~w~localhost~n~~p~Score: ~w~10~n~~p~Kills:~w~ 0~n~~p~Deaths:~w~ 0~n~~p~Money:~w~ $50,000~n~~p~Last On:~w~ 04-05-2021
In the code above, you can clearly see its printing "Last Seen On:" thing but it wont show it in game. Here is the code:
Code: CMD:osts(playerid, params[])
{
? ? new query[128], string2[128], accountname[24], ohours, omins, oscore, obal, okills, odeaths, ologged[128];
? ? if(sscanf(params, "s[24]", accountname))
? ? ? ? return SendClientMessage(playerid, COLOR_RED, "USAGE: /osts [account name]");
? ? mysql_format(g_SQL, query, sizeof(query), "SELECT score,hours,minutes,money,kills,deaths, laston FROM `players` WHERE `username` = '%e'",accountname);
? ? new Cache:result;
? ? result = mysql_query(g_SQL, query, true);
? ? new rows = cache_num_rows();
? ? if(rows)
? ? {? ? ?
? ? ? ? new string[1024];
? ? ? ? PlayerTextDrawShow(playerid, OStatsTD[playerid][0]);
? ? ? ? PlayerTextDrawShow(playerid, OStatsTD[playerid][1]);
? ? ? ? PlayerTextDrawShow(playerid, OStatsTD[playerid][3]);
? ? ? ? for (new i = 0; i < rows; i )
? ? ? ? {
? ? ? ? ? ? cache_get_value_name(i, "laston", ologged);
? ? ? ? ? ? cache_get_value_name_int(i, "kills", okills);
? ? ? ? ? ? cache_get_value_name_int(i, "deaths", odeaths);
? ? ? ? ? ? cache_get_value_name_int(i, "score", oscore);
? ? ? ? ? ? cache_get_value_name_int(i, "hours", ohours);
? ? ? ? ? ? cache_get_value_name_int(i, "minutes", omins);
? ? ? ? ? ? cache_get_value_name_int(i, "money", obal);
? ? ? ? ? ?
? ? ? ? ? ? format(string, sizeof(string), "~p~Username: ~w~%s~n~~p~Score: ~w~%d~n~~p~Kills:~w~ %d~n~~p~Deaths:~w~ %d~n~~p~Money:~w~ %s~n~~p~Last On:~w~ %s", accountname,oscore,okills,odeaths,formatInt(obal), ologged);
? ? ? ? }
? ? ? ? PlayerTextDrawSetString(playerid, OStatsTD[playerid][2], string);
? ? ? ? PlayerTextDrawShow(playerid, OStatsTD[playerid][2]);?
? ? ? ? SetTimerEx("tdhide", 10000, false, "i", playerid);?
? ? ? ?
? ? ? ? cache_delete(result);
? ? }
? ? else
? ? format(string2, sizeof(string2), "ERROR: %s isn't found in the database." ,accountname);
? ? SendClientMessage(playerid, COLOR_RED, string2);
? ? return 1;
}
Any idea what could be wrong here? Also, increasing the string size wouldn't help either.
|
|
|
Vehicle Missile Launcher |
Posted by: AbyssMorgan - 2021-04-18, 01:30 PM - Forum: Filterscripts
- No Replies
|
 |
Hi I would like to present include for Vehicle Missile Launcher.
Video:
- Vehicle Missile (Beta)
- Vehicle Missile (ColAndreas)
- Marica Mortar V1
- Heavy Marica Mortar
- Congreve Rocket
- Marica Mortar V2
- New Vehicle Missile
Code: //Functions Mini Missile:
ToggleVehicleMiniMissile(vehicleid,toggle);
IsToggleVehicleMiniMissile(vehicleid);
Float:GetVehicleMiniMissileSpeed(vehicleid);
SetVehicleMiniMissileSpeed(vehicleid,Float:speed);
GetVehicleMiniMissileReload(vehicleid);
SetVehicleMiniMissileReload(vehicleid,time);
Float:GetVehicleMiniMissileDistance(vehicleid);
SetVehicleMiniMissileDistance(vehicleid,Float:distance);
GetVehicleMiniMissileKey(vehicleid);
SetVehicleMiniMissileKey(vehicleid,key);
GetVehicleMiniMissileAmmo(vehicleid);
SetVehicleMiniMissileAmmo(vehicleid,ammo);
Float:GetVehicleMiniMissileDMG(vehicleid);
SetVehicleMiniMissileDMG(vehicleid,Float:damage);
Float:GetVehicleMiniMissileVehDMG(vehicleid);
SetVehicleMiniMissileVehDMG(vehicleid,Float:damage);
//Functions Heavy Missile:
ToggleVehicleHeavyMissile(vehicleid,toggle);
IsToggleVehicleHeavyMissile(vehicleid);
Float:GetVehicleHeavyMissileSpeed(vehicleid);
SetVehicleHeavyMissileSpeed(vehicleid,Float:speed);
GetVehicleHeavyMissileReload(vehicleid);
SetVehicleHeavyMissileReload(vehicleid,time);
Float:GetVehicleHeavyMissileDistance(vehicleid);
SetVehicleHeavyMissileDistance(vehicleid,Float:distance);
GetVehicleHeavyMissileKey(vehicleid);
SetVehicleHeavyMissileKey(vehicleid,key);
GetVehicleHeavyMissileAmmo(vehicleid);
SetVehicleHeavyMissileAmmo(vehicleid,ammo);
Float:GetVehicleHeavyMissileDMG(vehicleid);
SetVehicleHeavyMissileDMG(vehicleid,Float:damage);
Float:GetVehicleHeavyMissileVehDMG(vehicleid);
SetVehicleHeavyMissileVehDMG(vehicleid,Float:damage);
//Functions Rhino Missile:
ToggleVehicleRhinoMissile(vehicleid,toggle);
IsToggleVehicleRhinoMissile(vehicleid);
GetVehicleRhinoMissileReload(vehicleid);
SetVehicleRhinoMissileReload(vehicleid,time);
Float:GetVehicleRhinoMissileDistance(vehicleid);
SetVehicleRhinoMissileDistance(vehicleid,Float:distance);
GetVehicleRhinoMissileKey(vehicleid);
SetVehicleRhinoMissileKey(vehicleid,key);
GetVehicleRhinoMissileAmmo(vehicleid);
SetVehicleRhinoMissileAmmo(vehicleid,ammo);
Float:GetVehicleRhinoMissileDMG(vehicleid);
SetVehicleRhinoMissileDMG(vehicleid,Float:damage);
Float:GetVehicleRhinoMissileVehDMG(vehicleid);
SetVehicleRhinoMissileVehDMG(vehicleid,Float:damage);
//Functions Bomber Missile:
ToggleVehicleBomberMissile(vehicleid,toggle);
IsToggleVehicleBomberMissile(vehicleid);
Float:GetVehicleBomberMissileSpeed(vehicleid);
SetVehicleBomberMissileSpeed(vehicleid,Float:speed);
GetVehicleBomberMissileReload(vehicleid);
SetVehicleBomberMissileReload(vehicleid,time);
Float:GetVehicleBomberMissileDistance(vehicleid);
SetVehicleBomberMissileDistance(vehicleid,Float:distance);
GetVehicleBomberMissileKey(vehicleid);
SetVehicleBomberMissileKey(vehicleid,key);
GetVehicleBomberMissileAmmo(vehicleid);
SetVehicleBomberMissileAmmo(vehicleid,ammo);
Float:GetVehicleBomberMissileDMG(vehicleid);
SetVehicleBomberMissileDMG(vehicleid,Float:damage);
Float:GetVehicleBomberMissileVehDMG(vehicleid);
SetVehicleBomberMissileVehDMG(vehicleid,Float:damage);
//Functions Mortar Missile:
ToggleVehicleMortarMissile(vehicleid,toggle);
IsToggleVehicleMortarMissile(vehicleid);
Float:GetVehicleMortarMissileSpeed(vehicleid);
SetVehicleMortarMissileSpeed(vehicleid,Float:speed);
GetVehicleMortarMissileReload(vehicleid);
SetVehicleMortarMissileReload(vehicleid,time);
Float:GetVehicleMortarMissileDistance(vehicleid);
SetVehicleMortarMissileDistance(vehicleid,Float:distance);
GetVehicleMortarMissileKey(vehicleid);
SetVehicleMortarMissileKey(vehicleid,key);
Float:GetVehicleMortarMissileHeight(vehicleid);
SetVehicleMortarMissileHeight(vehicleid,Float:height);
Float:GetVehicleMortarMissileRotation(vehicleid);
SetVehicleMortarMissileRotation(vehicleid,Float:rotation);
GetVehicleMortarMissileAmmo(vehicleid);
SetVehicleMortarMissileAmmo(vehicleid,ammo);
GetVehicleMortarMissileAimSys(vehicleid);
SetVehicleMortarMissileAimSys(vehicleid,toggle);
Float:GetVehicleMortarMissileDMG(vehicleid);
SetVehicleMortarMissileDMG(vehicleid,Float:damage);
Float:GetVehicleMortarMissileVehDMG(vehicleid);
SetVehicleMortarMissileVehDMG(vehicleid,Float:damage);
//Functions Mega Missile:
ToggleVehicleMegaMissile(vehicleid,toggle);
IsToggleVehicleMegaMissile(vehicleid);
Float:GetVehicleMegaMissileSpeed(vehicleid);
SetVehicleMegaMissileSpeed(vehicleid,Float:speed);
GetVehicleMegaMissileReload(vehicleid);
SetVehicleMegaMissileReload(vehicleid,time);
Float:GetVehicleMegaMissileDistance(vehicleid);
SetVehicleMegaMissileDistance(vehicleid,Float:distance);
GetVehicleMegaMissileKey(vehicleid);
SetVehicleMegaMissileKey(vehicleid,key);
Float:GetVehicleMegaMissileHeight(vehicleid);
SetVehicleMegaMissileHeight(vehicleid,Float:height);
Float:GetVehicleMegaMissileRotation(vehicleid);
SetVehicleMegaMissileRotation(vehicleid,Float:rotation);
GetVehicleMegaMissileAmmo(vehicleid);
SetVehicleMegaMissileAmmo(vehicleid,ammo);
GetVehicleMegaMissileAimSys(vehicleid);
SetVehicleMegaMissileAimSys(vehicleid,toggle);
Float:GetVehicleMegaMissileDMG(vehicleid);
SetVehicleMegaMissileDMG(vehicleid,Float:damage);
Float:GetVehicleMegaMissileVehDMG(vehicleid);
SetVehicleMegaMissileVehDMG(vehicleid,Float:damage);
//Functions Congreve Rocket:
ToggleVehicleCongreve(vehicleid,toggle);
IsToggleVehicleCongreve(vehicleid);
Float:GetVehicleCongreveSpeed(vehicleid);
SetVehicleCongreveSpeed(vehicleid,Float:speed);
GetVehicleCongreveReload(vehicleid);
SetVehicleCongreveReload(vehicleid,time);
Float:GetVehicleCongreveDistance(vehicleid);
SetVehicleCongreveDistance(vehicleid,Float:distance);
GetVehicleCongreveKey(vehicleid);
SetVehicleCongreveKey(vehicleid,key);
Float:GetVehicleCongreveSpread(vehicleid);
SetVehicleCongreveSpread(vehicleid,Float:spread);
GetVehicleCongreveSalvo(vehicleid);
SetVehicleCongreveSalvo(vehicleid,salvo);
GetVehicleCongreveAmmo(vehicleid);
SetVehicleCongreveAmmo(vehicleid,ammo);
Float:GetVehicleCongreveDMG(vehicleid);
SetVehicleCongreveDMG(vehicleid,Float:damage);
Float:GetVehicleCongreveVehDMG(vehicleid);
SetVehicleCongreveVehDMG(vehicleid,Float:damage);
//Functions Havoc Rocket:
ToggleVehicleHavoc(vehicleid,toggle);
IsToggleVehicleHavoc(vehicleid);
Float:GetVehicleHavocSpeed(vehicleid);
SetVehicleHavocSpeed(vehicleid,Float:speed);
GetVehicleHavocReload(vehicleid);
SetVehicleHavocReload(vehicleid,time);
Float:GetVehicleHavocDistance(vehicleid);
SetVehicleHavocDistance(vehicleid,Float:distance);
GetVehicleHavocKey(vehicleid);
SetVehicleHavocKey(vehicleid,key);
Float:GetVehicleHavocSpread(vehicleid);
SetVehicleHavocSpread(vehicleid,Float:spread);
GetVehicleHavocSalvo(vehicleid);
SetVehicleHavocSalvo(vehicleid,salvo);
GetVehicleHavocAmmo(vehicleid);
SetVehicleHavocAmmo(vehicleid,ammo);
Float:GetVehicleHavocDMG(vehicleid);
SetVehicleHavocDMG(vehicleid,Float:damage);
Float:GetVehicleHavocVehDMG(vehicleid);
SetVehicleHavocVehDMG(vehicleid,Float:damage);
//Functions Flare:
ToggleVehicleFlare(vehicleid,toggle);
IsToggleVehicleFlare(vehicleid);
Float:GetVehicleFlareSpeed(vehicleid);
SetVehicleFlareSpeed(vehicleid,Float:speed);
GetVehicleFlareReload(vehicleid);
SetVehicleFlareReload(vehicleid,time);
Float:GetVehicleFlareDistance(vehicleid);
SetVehicleFlareDistance(vehicleid,Float:distance);
GetVehicleFlareKey(vehicleid);
SetVehicleFlareKey(vehicleid,key);
GetVehicleFlareSalvo(vehicleid);
SetVehicleFlareSalvo(vehicleid,salvo);
GetVehicleFlareAmmo(vehicleid);
SetVehicleFlareAmmo(vehicleid,ammo);
GetVehicleFlareType(vehicleid);
SetVehicleFlareType(vehicleid,type);
//Functions Ground Bomb:
ToggleVehicleGroundBomb(vehicleid,toggle);
IsToggleVehicleGroundBomb(vehicleid);
Float:GetVehicleGroundBombSpeed(vehicleid);
SetVehicleGroundBombSpeed(vehicleid,Float:speed);
GetVehicleGroundBombReload(vehicleid);
SetVehicleGroundBombReload(vehicleid,time);
Float:GetVehicleGroundBombDistance(vehicleid);
SetVehicleGroundBombDistance(vehicleid,Float:distance);
GetVehicleGroundBombKey(vehicleid);
SetVehicleGroundBombKey(vehicleid,key);
GetVehicleGroundBombAmmo(vehicleid);
SetVehicleGroundBombAmmo(vehicleid,ammo);
Float:GetVehicleGroundBombDMG(vehicleid);
SetVehicleGroundBombDMG(vehicleid,Float:damage);
Float:GetVehicleGroundBombVehDMG(vehicleid);
SetVehicleGroundBombVehDMG(vehicleid,Float:damage);
//Functions Ground Bomb (Extended Grenade):
GetVehicleGroundBombType(vehicleid);
SetVehicleGroundBombType(vehicleid,special_weaponid);
GetVehicleGroundBombEffect(vehicleid);
SetVehicleGroundBombEffect(vehicleid,effectid);
Float:GetVehicleGroundBombEffectDMG(vehicleid);
SetVehicleGroundBombEffectDMG(vehicleid,Float:damage);
Float:GetVehicleGroundBombEffectVDMG(vehicleid);
SetVehicleGroundBombEffectVDMG(vehicleid,Float:veh_damage);
GetVehicleGroundBombEffectTime(vehicleid);
SetVehicleGroundBombEffectTime(vehicleid,seconds);
//Player Functions:
GetMiniMissileRemainingTime(playerid);
GetHeavyMissileRemainingTime(playerid);
GetRhinoMissileRemainingTime(playerid);
GetBomberMissileRemainingTime(playerid);
GetMortarMissileRemainingTime(playerid);
GetMegaMissileRemainingTime(playerid);
GetCongreveRemainingTime(playerid);
GetHavocRemainingTime(playerid);
GetGroundBombRemainingTime(playerid);
GetFlareRemainingTime(playerid);
IsVehicleMissileAimSysReady(playerid);
SetVehicleMissileAimTarget(playerid,Float:x=0.0,Float:y=0.0);
//Extended Functions:
Float:GetMissileStreamDistance();
SetMissileStreamDistance(Float:streamdistance);
DisarmVehicleMissile(vehicleid);
SetVehicleMissileDefaultConfig(vehicleid);
ToggleMissileAutoDisarm(bool:toggle);
bool:IsToggleMissileAutoDisarm();
OnVehicleShot(playerid,type);
OnVehicleMissileInit();
GetMissileRemainingTime(playerid,type);
GetVehicleMissileAmmo(vehicleid,type);
SetVehicleMissileAmmo(vehicleid,type,ammo);
//Callbacks:
OnVehicleArmed(playerid,vehicleid);
OnVehicleMissileRequestLaunch(playerid,type,vehicleid);
OnVehicleMissileLaunched(playerid,type,vehicleid);
Default control:
Code: Mini Missile - LALT
Rhino Missile - LALT
Heavy Missile - ALT GR / LCTRL / NUM0
Bomber Missile - Y
Mortar Missile - Y
Mega Missile - Y
Congreve Rocket - N
Havoc Rocket - Y
Ground Bomb - Y
Definitions:
Code: //Vehicle Missile Types:
VEHICLE_MISSILE_TYPE_MINI
VEHICLE_MISSILE_TYPE_HEAVY
VEHICLE_MISSILE_TYPE_BOMBER
VEHICLE_MISSILE_TYPE_RHINO
VEHICLE_MISSILE_TYPE_MORTAR
VEHICLE_MISSILE_TYPE_MEGA
VEHICLE_MISSILE_TYPE_CON
VEHICLE_MISSILE_TYPE_HAVOC
VEHICLE_MISSILE_TYPE_BOMB
VEHICLE_MISSILE_TYPE_FLARE
//default projectile speed
VEHICLE_MISSILE_SPEED_MINI
VEHICLE_MISSILE_SPEED_HEAVY
VEHICLE_MISSILE_SPEED_BOMBER
VEHICLE_MISSILE_SPEED_MORTAR
VEHICLE_MISSILE_SPEED_MEGA
VEHICLE_MISSILE_SPEED_CON
VEHICLE_MISSILE_SPEED_HAVOC
VEHICLE_MISSILE_SPEED_BOMB
VEHICLE_MISSILE_SPEED_FLARE
//default reload time in milisecond
VEHICLE_MISSILE_RELOAD_MINI
VEHICLE_MISSILE_RELOAD_HEAVY
VEHICLE_MISSILE_RELOAD_BOMBER
VEHICLE_MISSILE_RELOAD_RHINO
VEHICLE_MISSILE_RELOAD_MORTAR
VEHICLE_MISSILE_RELOAD_MEGA
VEHICLE_MISSILE_RELOAD_CON
VEHICLE_MISSILE_RELOAD_HAVOC
VEHICLE_MISSILE_RELOAD_BOMB
VEHICLE_MISSILE_RELOAD_FLARE
//default maximum distance that can be overcome missile
VEHICLE_MISSILE_DISTANCE_MINI
VEHICLE_MISSILE_DISTANCE_HEAVY
VEHICLE_MISSILE_DISTANCE_BOMBER
VEHICLE_MISSILE_DISTANCE_RHINO
VEHICLE_MISSILE_DISTANCE_MORTAR
VEHICLE_MISSILE_DISTANCE_MEGA
VEHICLE_MISSILE_DISTANCE_CON
VEHICLE_MISSILE_DISTANCE_HAVOC
VEHICLE_MISSILE_DISTANCE_BOMB
VEHICLE_MISSILE_DISTANCE_FLARE
//default key
VEHICLE_MISSILE_KEY_MINI
VEHICLE_MISSILE_KEY_HEAVY
VEHICLE_MISSILE_KEY_BOMBER
VEHICLE_MISSILE_KEY_RHINO
VEHICLE_MISSILE_KEY_MORTAR
VEHICLE_MISSILE_KEY_MEGA
VEHICLE_MISSILE_KEY_CON
VEHICLE_MISSILE_KEY_HAVOC
VEHICLE_MISSILE_KEY_BOMB
VEHICLE_MISSILE_KEY_FLARE
VEHICLE_MISSILE_HEIGHT_MORTAR? // default arc height for Mortar Missile
VEHICLE_MISSILE_HEIGHT_MEGA? ? // default arc height for Mega Missile
VEHICLE_MISSILE_ROTATION? ? ? ? // default mortar/mega rotation
VEHICLE_MISSILE_SPREAD_CON? ? ? // default spread for Congreve Rocket
VEHICLE_MISSILE_SALVO_CON? ? ? // default salvo (number of projectiles) for Congreve Rocket
VEHICLE_MISSILE_SPREAD_HAVOC? ? // default spread for Havoc Missile
VEHICLE_MISSILE_SALVO_HAVOC? ? // default salvo (number of projectiles) for Havoc Missile
VEHICLE_MISSILE_SALVO_FLARE? ? // default salvo (number of projectiles) for Flare
//infinity ammo
VEHICLE_WEAPON_AMMO_INFINITY
Weapon Vehicle Recommendation:
Code: VEHICLE_MISSILE_TYPE_MINI - Any vehicle
VEHICLE_MISSILE_TYPE_HEAVY - All air vehicles (Causes turbulence)
VEHICLE_MISSILE_TYPE_BOMBER - All air vehicles
VEHICLE_MISSILE_TYPE_RHINO - Recommended for use only RC Tiger
VEHICLE_MISSILE_TYPE_MORTAR - Any vehicle (Recomended Air Vehicle)
VEHICLE_MISSILE_TYPE_MEGA - Any vehicle (Recomended Air Vehicle)
VEHICLE_MISSILE_TYPE_CON - Hydra
VEHICLE_MISSILE_TYPE_HAVOC - Andromada
VEHICLE_MISSILE_TYPE_BOMB - Rustler
VEHICLE_MISSILE_TYPE_FLARE - Hydra
Example Code:
Code: public OnGameModeInit(){
ToggleMissileAutoDisarm(true);
return 1;
}
public OnVehicleArmed(playerid,vehicleid){
SetVehicleMiniMissileDMG(vehicleid,100.0);
SetVehicleMiniMissileVehDMG(vehicleid,500.0);
SetVehicleHeavyMissileDMG(vehicleid,200.0);
SetVehicleHeavyMissileVehDMG(vehicleid,1000.0);
SetVehicleBomberMissileDMG(vehicleid,100.0);
SetVehicleBomberMissileVehDMG(vehicleid,500.0);
SetVehicleRhinoMissileDMG(vehicleid,50.0);
SetVehicleRhinoMissileVehDMG(vehicleid,500.0);
SetVehicleMortarMissileDMG(vehicleid,100.0);
SetVehicleMortarMissileVehDMG(vehicleid,1000.0);
SetVehicleMegaMissileDMG(vehicleid,200.0);
SetVehicleMegaMissileVehDMG(vehicleid,2000.0);
SetVehicleCongreveDMG(vehicleid,50.0);
SetVehicleCongreveVehDMG(vehicleid,1500.0);
SetVehicleHavocDMG(vehicleid,500.0);
SetVehicleHavocVehDMG(vehicleid,5000.0);
SetVehicleGroundBombDMG(vehicleid,500.0);
SetVehicleGroundBombVehDMG(vehicleid,5000.0);
switch(GetVehicleModel(vehicleid)){
case 564: { //rc tiger
ToggleVehicleRhinoMissile(vehicleid,1);
}
case 553: { //nevada
ToggleVehicleBomberMissile(vehicleid,1);
}
case 592: { //andromada
ToggleVehicleBomberMissile(vehicleid,1);
SetVehicleBomberMissileSpeed(vehicleid,60.0);
SetVehicleBomberMissileReload(vehicleid,500);
}
case 520: { //hydra
ToggleVehicleBomberMissile(vehicleid,1);
SetVehicleBomberMissileSpeed(vehicleid,80.0);
SetVehicleBomberMissileReload(vehicleid,500);
ToggleVehicleHeavyMissile(vehicleid,1);
SetVehicleHeavyMissileSpeed(vehicleid,90.0);
SetVehicleHeavyMissileKey(vehicleid,KEY_CROUCH);
}
case 476: { //rustler
ToggleVehicleMiniMissile(vehicleid,1);
SetVehicleMiniMissileSpeed(vehicleid,80.0);
ToggleVehicleBomberMissile(vehicleid,1);
SetVehicleBomberMissileSpeed(vehicleid,80.0);
SetVehicleBomberMissileReload(vehicleid,500);
}
case 548, 497, 469: { //Cargobob, Police Maverik, Sparrow
ToggleVehicleMiniMissile(vehicleid,1);
ToggleVehicleBomberMissile(vehicleid,1);
}
case 512: { //Cropduster
ToggleVehicleBomberMissile(vehicleid,1);
}
case 513: { //stuntplane
ToggleVehicleBomberMissile(vehicleid,1);
}
case 519: { //shamal
ToggleVehicleMiniMissile(vehicleid,1);
SetVehicleMiniMissileSpeed(vehicleid,80.0);
}
case 432: { //rhino
ToggleVehicleMegaMissile(vehicleid,1);
SetVehicleMegaMissileSpeed(vehicleid,50.0);
SetVehicleMegaMissileHeight(vehicleid,VEHICLE_MISSILE_HEIGHT_MEGA);
SetVehicleMegaMissileDistance(vehicleid,VEHICLE_MISSILE_DISTANCE_MEGA);
SetVehicleMegaMissileAimSys(vehicleid,1);
}
}
return 1;
}
Remaining Time / Ammo detection:
Code: public OnVehicleMissileRequestLaunch(playerid,type,vehicleid){
new c_time = GetMissileRemainingTime(playerid,type);
if(c_time > 0){
new buffer[32];
format(buffer,sizeof(buffer),"Remaining Time~n~~w~%.2f second",c_time / 1000.0);
GameTextForPlayer(playerid,buffer,2500,4);
} else if(GetVehicleMissileAmmo(vehicleid,type) == 0){
new buffer[32];
format(buffer,sizeof(buffer),"No ammunition");
GameTextForPlayer(playerid,buffer,2500,4);
}
if((type == VEHICLE_MISSILE_TYPE_MORTAR && GetVehicleMortarMissileAimSys(vehicleid)) || (type == VEHICLE_MISSILE_TYPE_MEGA && GetVehicleMegaMissileAimSys(vehicleid))){
if(!IsVehicleMissileAimSysReady(playerid)){
GameTextForPlayer(playerid,"Select target in map",2500,4);
}
}
return 1;
}
public OnVehicleMissileLaunched(playerid,type,vehicleid){
new ammo = GetVehicleMissileAmmo(vehicleid,type);
if(ammo != VEHICLE_WEAPON_AMMO_INFINITY){
new buffer[32];
format(buffer,sizeof(buffer),"Vehicle Ammo~n~~w~%d",ammo);
GameTextForPlayer(playerid,buffer,2500,4);
}
return 1;
}
Advanced Mortar Control (if AimSys is disabled):
Code: public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){
if(IsToggleVehicleMegaMissile(GetPlayerVehicleID(playerid))){
if(KEY_PRESSED(KEY_ANALOG_UP)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMegaMissileDistance(vid), buf[128];
val = 5.0;
if(val > 800.0) val = 800.0;
SetVehicleMegaMissileDistance(vid,val);
format(buf,sizeof buf,"Mortar Distance: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
} else if(KEY_PRESSED(KEY_ANALOG_DOWN)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMegaMissileDistance(vid), buf[128];
val -= 5.0;
if(val < 50.0) val = 50.0;
SetVehicleMegaMissileDistance(vid,val);
format(buf,sizeof buf,"Mortar Distance: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
} else if(KEY_PRESSED(KEY_ANALOG_RIGHT)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMegaMissileHeight(vid), buf[128];
val = 5.0;
if(val > 400.0) val = 400.0;
SetVehicleMegaMissileHeight(vid,val);
format(buf,sizeof buf,"Mortar Height: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
} else if(KEY_PRESSED(KEY_ANALOG_LEFT)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMegaMissileHeight(vid), buf[128];
val -= 5.0;
if(val < 25.0) val = 25.0;
SetVehicleMegaMissileHeight(vid,val);
format(buf,sizeof buf,"Mortar Height: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
}
} else if(IsToggleVehicleMortarMissile(GetPlayerVehicleID(playerid))){
if(KEY_PRESSED(KEY_ANALOG_UP)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMortarMissileDistance(vid), buf[128];
val = 5.0;
if(val > 600.0) val = 600.0;
SetVehicleMortarMissileDistance(vid,val);
format(buf,sizeof buf,"Mortar Distance: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
} else if(KEY_PRESSED(KEY_ANALOG_DOWN)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMortarMissileDistance(vid), buf[128];
val -= 5.0;
if(val < 50.0) val = 50.0;
SetVehicleMortarMissileDistance(vid,val);
format(buf,sizeof buf,"Mortar Distance: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
} else if(KEY_PRESSED(KEY_ANALOG_RIGHT)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMortarMissileHeight(vid), buf[128];
val = 5.0;
if(val > 300.0) val = 300.0;
SetVehicleMortarMissileHeight(vid,val);
format(buf,sizeof buf,"Mortar Height: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
} else if(KEY_PRESSED(KEY_ANALOG_LEFT)){
new vid = GetPlayerVehicleID(playerid), Float:val = GetVehicleMortarMissileHeight(vid), buf[128];
val -= 5.0;
if(val < 25.0) val = 25.0;
SetVehicleMortarMissileHeight(vid,val);
format(buf,sizeof buf,"Mortar Height: ~g~%.0f",val);
GameTextForPlayer(playerid,buf,1000,4);
}
}
return 1;
}
Download:
VehicleMissileCol.inc
Missile.inc
3DTryg.inc
ExtendedGrenade.inc
ColAndreas Plugin
Notice:
Filterscript not exist because filterscripts have limits.
This has been replaced by include, having automatic installation, efficient GameMode/FilterScript.
|
|
|
Hyperion Mega Ship Battle |
Posted by: AbyssMorgan - 2021-04-18, 01:27 PM - Forum: Filterscripts
- No Replies
|
 |
Hello, I would like to present you the Hyperion Mega Ship Battle.
It is a war of two large warships in which between 6 and 42 players can participate (21 per ship)
![[Image: lDN2lRH.png]](https://i.imgur.com/lDN2lRH.png)
Video:
https://www.youtube.com/watch?v=Ut7iBj7SRGk
Installation:
Code: #include <streamer>
#include <colandreas>
#include <3DTryg>
#include <Missile>
#include <progress>
//#define HYPERION_START_TIME 90
//#define HYPERION_VW 0
#include <Hyperion>
public IsAllowedToJoinHyperion(playerid){
return 1;
}
public OnHyperionPlayerDeath(playerid,killerid){
SendDeathMessage(killerid,playerid,51);
return 1;
}
public OnHyperionHelpPresented(playerid){
ShowPlayerDialog(playerid,0,DIALOG_STYLE_MSGBOX,"Hyperion Mega Ship","Control:\nUse your mouse to aim\nUse LMB or Ctrl to shot","OK","");
return 1;
}
public OnPlayerEnteringHyperion(playerid,teamid){
//player teleported to Hyperion Battle
return 1;
}
public OnPlayerExitHyperion(playerid){
//player death on hyperion or battle is finished
return 1;
}
public OnHyperionStateChange(hyperion_state){
switch(hyperion_state){
case HYPERION_STATE_OFF: { //attention this state cannot call when Hyperion battle finish
SendClientMessageToAll(0xFFFFFFFF,"Hyperion Battle cannot start due to lack of players.");
}
case HYPERION_STATE_STARTING: {
new buffer[128];
format(buffer,sizeof(buffer),"Hyperion Battle will start in %d seconds.",HYPERION_START_TIME);
SendClientMessageToAll(0xFFFFFFFF,buffer);
}
case HYPERION_STATE_ON: {
SendClientMessageToAll(0xFFFFFFFF,"Hyperion Battle has been started.");
}
}
return 1;
}
public OnHyperionBattleFinished(teamid){
switch(teamid){
case HYPERION_TEAM_BLUE: {
SendClientMessageToAll(0xFFFFFFFF,"Hyperion Battle was finished the blue team wins.");
}
case HYPERION_TEAM_GREEN: {
SendClientMessageToAll(0xFFFFFFFF,"Hyperion Battle was finished the green team wins.");
}
case HYPERION_TEAM_INTERRUPT: {
SendClientMessageToAll(0xFFFFFFFF,"Hyperion Battle was interrupted due to a lack of players.");
}
}
return 1;
}
public OnHyperionBattleResults(playerid,isdead,iswinner){
switch(iswinner){
case 0: {
SendClientMessage(playerid,0xFFFFFFFF,"You team lose the Hyperion Battle.");
}
case 1: {
SendClientMessage(playerid,0xFFFFFFFF,"You team win the Hyperion Battle.");
}
}
return 1;
}
CMD:hyperion(playerid){
if(!CallLocalFunction("IsAllowedToJoinHyperion","d",playerid)) return 1;
if(Hyperion::IsPlayerSaved(playerid)) return SendClientMessage(playerid,0xFFFFFFFF,"You are already queued for Hyperion Battle.");
if(Hyperion::CountPlayers() >= HYPERION_MAX_QUEUE) return SendClientMessage(playerid,0xFFFFFFFF,"Queue for Hyperion Battle is already full.");
Hyperion::SavePlayer(playerid,true);
SendClientMessage(playerid,0xFFFFFFFF,"You have signed up for Hyperion Battle Queue.");
return 1;
}
CMD:hyperionexit(playerid){
if(!Hyperion::IsPlayerSaved(playerid)) return SendClientMessage(playerid,0xFFFFFFFF,"You are not queued for Hyperion Battle.");
Hyperion::SavePlayer(playerid,false);
SendClientMessage(playerid,0xFFFFFFFF,"You left the Hyperion Battle queue.");
return 1;
}
Functions:
Code: Hyperion::IsPlayerSaved(playerid);
Hyperion::SavePlayer(playerid,bool:state);
Hyperion::IsPlayerOnArea(playerid);
Hyperion::CountPlayers();
Callbacks:
Code: IsAllowedToJoinHyperion(playerid);
OnHyperionBattleResults(playerid,isdead,iswinner);
OnPlayerEnteringHyperion(playerid,teamid);
OnPlayerExitHyperion(playerid);
OnHyperionStateChange(hyperion_state);
OnHyperionBattleFinished(teamid);
OnHyperionHelpPresented(playerid);
Download:
Hyperion.inc
3DTryg.inc
Missile.inc
progress.inc
ColAndreas Plugin
Notice:
Filterscript not exist because filterscripts have limits.
This has been replaced by include, having automatic installation, efficient GameMode/FilterScript.
|
|
|
Faction Missions |
Posted by: AbyssMorgan - 2021-04-18, 01:23 PM - Forum: Filterscripts
- Replies (1)
|
 |
Hello, I would like to present you the Faction Mini Missions.
Video:
https://www.youtube.com/watch?v=uMpS2SaWmB0
Example Code:
Code: #include <Streamer>
#include <colandreas>
#include <route_rand>
#include <3DTryg>
#include <Missions>
public OnPlayerEnterPatrol(playerid,mobid){
if(GetPlayerTeam(playerid) == TEAM_POLICEMAN) return 1; //policeman clear unsafe zone
return 0; //player get robbed
}
public OnPlayerDestroyPatrol(playerid,mobid){
//give mission prize
GivePlayerMoney(playerid,100);
return 1;
}
public OnPlayerRobbed(playerid,mobid,mission_state){
switch(mission_state){
case MISSIONS_STATE_FAIL_ROBBERY: {
SendClientMessage(playerid,0xFFFFFFFF,"The thief stumbled and you managed to escape :)");
}
case MISSIONS_STATE_ROBBED: {
SendClientMessage(playerid,0xFFFFFFFF,"You lose $100 by robbers");
GivePlayerMoney(playerid,-100);
}
}
return 1;
}
public OnPlayerFoundCorpse(playerid,mobid){
if(GetPlayerTeam(playerid) == TEAM_MEDIC) return 1;
return 0; //player able hit corpse (if in vehicle)
}
public OnPlayerHitCorpse(playerid,mobid){
SendClientMessage(playerid,0xFFFFFFFF,"You hit corpse by vehicle, you got mandate $100");
GivePlayerMoney(playerid,-100);
return 1;
}
public OnPlayerHealCorpse(playerid,mobid){
if(GetPlayerTeam(playerid) == TEAM_MEDIC){
SendClientMessage(playerid,0xFFFFFFFF,"You healed the corpse");
return 1;
}
return 0;
}
public OnPlayerFoundScrap(playerid,mobid){
if(GetPlayerTeam(playerid) == TEAM_METAL_SCRAPPER) return 1; //player able to pickup Scrap (Only for vehicle 578)
return 0;
}
public OnPlayerTakeScrap(playerid,mobid,mission_state,count_items){
switch(mission_state){
case MISSIONS_SCRAP_FULL: {
SendClientMessage(playerid,0xFFFFFFFF,"Your vehicle cargo is full");
}
case MISSIONS_SCRAP_LOADED: {
SendClientMessage(playerid,0xFFFFFFFF,"You picked up scrap metal");
}
}
return 1;
}
public OnPlayerExceededSpeed(playerid,mobid,Float:speed,Float:max_speed){
new buffer[256];
format(buffer,sizeof(buffer),"You exceeded the maximum speed %.1f mph you were driving %.1f mph",max_speed,speed);
SendClientMessage(playerid,0xFFFFFFFF,buffer);
//mandate or something :D
return 1;
}
public OnPlayerPutOutFire(playerid,mobid){
SendClientMessage(playerid,0xFFFFFFFF,"You put out fire");
return 1;
}
public OnPlayerVehicleDamagedByRoad(playerid,mobid,old_health,new_health,veh_damage){
return 1;
}
public OnPlayerDestroyedTreeOnRoad(playerid,mobid){
SendClientMessage(playerid,0xFFFFFFFF,"You destroyed tree on road");
return 1;
}
public OnPlayerUnloadingScrap(playerid,count_items){
if(Item::InCircle(playerid,item_player,0.0,0.0,10.0)){
SendClientMessage(playerid,0xFFFFFFFF,"You unloading scrap");
return 1;
}
return 0;
}
public OnPlayerTryDisarmBomb(playerid,mobid){
if(GetPlayerTeam(playerid) == TEAM_ARMY) return 1;
return 0;
}
public OnPlayerDisarmBomb(playerid,mobid,mission_state){
switch(mission_state){
case MISSIONS_BOMB_DISARM_FAIL: {
SendClientMessage(playerid,0xFFFFFFFF,"Failed to disarm bomb !!!");
}
case MISSIONS_BOMB_DISARM_SUCCESS: {
SendClientMessage(playerid,0xFFFFFFFF,"Bomb disarmed");
}
case MISSIONS_BOMB_DISARM_TOO_LATE: {
SendClientMessage(playerid,0xFFFFFFFF,"Is too late to disarm bomb !!!");
}
}
return 1;
}
public OnPlayerFixedRoad(playerid,mobid){
SendClientMessage(playerid,0xFFFFFFFF,"Road fixed");
return 1;
}
public OnGameModeInit(){
Missions::SetMissionsScrapKey(KEY_YES);
Missions::SetMissionsCorpseKey(KEY_YES);
Missions::SetMissionsBombKey(KEY_YES);
Missions::Enable(MISSIONS_TYPE_BOMB);
Missions::Enable(MISSIONS_TYPE_WOOD);
Missions::Enable(MISSIONS_TYPE_SCRAP);
Missions::Enable(MISSIONS_TYPE_CORPSE);
Missions::Enable(MISSIONS_TYPE_DMGROUTE);
Missions::Enable(MISSIONS_TYPE_FIRE);
Missions::Enable(MISSIONS_TYPE_PATROL);
Missions::SetSpawnRectangle(MISSIONS_TYPE_BOMB,-3000.0,-3000.0,3000.0,3000.0);
Missions::SetSpawnRectangle(MISSIONS_TYPE_CORPSE,-3000.0,-3000.0,3000.0,3000.0);
Missions::SetSpawnRectangle(MISSIONS_TYPE_FIRE,-3000.0,-3000.0,3000.0,3000.0);
Missions::SetSpawnRectangle(MISSIONS_TYPE_WOOD,-3000.0,-3000.0,3000.0,3000.0);
Missions::SetSpawnRectangle(MISSIONS_TYPE_SCRAP,-3000.0,-3000.0,3000.0,3000.0);
Missions::SetSpawnRectangle(MISSIONS_TYPE_DMGROUTE,-3000.0,-3000.0,3000.0,3000.0);
Missions::SetSpawnRectangle(MISSIONS_TYPE_PATROL,-3000.0,-3000.0,3000.0,3000.0);
Missions::Generate(); //force mission generate after server restart
return 1;
}
CMD:speedcamera_del(playerid,params[]){
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xFFFFFFFF,"Leave vehicle");
new mobid;
if(sscanf(params,"d",mobid)) return SendClientMessage(playerid,0xFFFFFFFF,"Usage /speedcamera_del <id>");
if(mobid < 0 || mobid >= MISSIONS_MAX_RADAR) return SendClientMessage(playerid,0xFFFFFFFF,"Wrong speed camera ID (0 - 99)");
if(!Missions::RadarData[mobid][f_active]) return SendClientMessage(playerid,0xFFFFFFFF,"Speed camera is not active");
Missions::DestroyRadar(mobid);
SendClientMessage(playerid,0xFFFFFFFF,"Speed camera deleted");
return 1;
}
CMD:speedcamera_add(playerid,params[]){
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xFFFFFFFF,"Leave vehicle");
new Float:speed;
if(sscanf(params,"f",speed)) return SendClientMessage(playerid,0xFFFFFFFF,"Uzywaj /speedcamera_add <max_speed>");
new Float:x,Float:y,Float:z,Float:z_angle;
GetPlayerPos(playerid,x,y,z);
GetPointInFrontOfPlayer(playerid,x,y,1.0);
GetPlayerFacingAngle(playerid,z_angle);
if(Missions::CreateRadar(x,y,z,z_angle,0,0,speed)){
SendClientMessage(playerid,0xFFFFFFFF,"Speed camera added");
ApplyAnimation(playerid,"BOMBER","BOM_Plant",4.1,0,0,0,0,0);
} else {
SendClientMessage(playerid,0xFFFFFFFF,"Unable to add speed camera (limit exceeded)");
}
return 1;
}
Functions:
Code: Missions::SetMissionsScrapKey(key);
Missions::SetMissionsCorpseKey(key);
Missions::SetMissionsBombKey(key);
Missions::CountVehicleScrap(vehicleid);
Missions::DropScrap(vehicleid);
Missions::HealCorpse(playerid);
Missions::CreateRadar(Float:x,Float:y,Float:z,Float:rz,worldid=0,interiorid=0,Float:speed=80.0);
Missions::DestroyRadar(mobid);
Missions::SetSpawnRectangle(mission_type,Float:minx,Float:miny,Float:maxx,Float:maxy,bool:spawn_validation=true);
Missions::SetSpawnPolygon(mission_type,Float:points[],maxpoints=sizeof(points),bool:spawn_validation=true);
Callbacks:
Code: OnPlayerEnterPatrol(playerid,mobid);
OnPlayerDestroyPatrol(playerid,mobid);
OnPlayerRobbed(playerid,mobid,mission_state);
OnPlayerFoundCorpse(playerid,mobid);
OnPlayerHitCorpse(playerid,mobid);
OnPlayerFoundScrap(playerid,mobid);
OnPlayerTakeScrap(playerid,mobid,mission_state,count_items);
OnPlayerExceededSpeed(playerid,mobid,Float:speed,Float:max_speed);
OnPlayerPutOutFire(playerid,mobid);
OnPlayerVehicleDamagedByRoad(playerid,mobid,old_health,new_health,veh_damage);
OnPlayerDestroyedTreeOnRoad(playerid,mobid);
OnPlayerUnloadingScrap(playerid,count_items);
OnPlayerHealCorpse(playerid,mobid);
OnPlayerTryDisarmBomb(playerid,mobid);
OnPlayerDisarmBomb(playerid,mobid,mission_state);
OnPlayerFixedRoad(playerid,mobid);
Download:
Missions.inc
route_rand.inc
route_rand.bin (put in /scriptfiles)
3DTryg.inc
ColAndreas Plugin
Notice:
Filterscript not exist because filterscripts have limits.
This has been replaced by include, having automatic installation, efficient GameMode/FilterScript.
|
|
|
Santa Gifts |
Posted by: AbyssMorgan - 2021-04-18, 01:07 PM - Forum: Filterscripts
- No Replies
|
 |
Hello, I would like to present a simple script to automatically deploy gifts on the map.
Description:
- On the map there is a prescribed amount of gifts. (Default 100)
- They appear in random locations on the map, in addition to water.
- What definite time reset location. (Default 2 hours)
- After collecting gifts a player receives award. (To set)
- After collecting gift changing locations.
- Nobody, not even the admin does not know gift location.
The script can be used to:
- Christmas
- Easter
- Halloween
Installation:
Code: //#define SANTA_IS_EASTER_EVENT? ? //Change to Easter Event
//#define SANTA_IS_EASTER_HALLOWEEN //Change to Halloween Event
#include <streamer>
#include <ColAndreas>
#include <3DTryg>
#include <Santa>
public OnGameModeInit(){
//Santa::SetSpawnRectangle(Float:minx,Float:miny,Float:maxx,Float:maxy,bool:reset=true);
//Santa::SetSpawnPolygon(Float:points[],maxpoints=sizeof(points),bool:reset=true);
return 1;
}
public OnSantaPickupReward(playerid){
//edit this
GivePlayerMoney(playerid,250);
return 1;
}
Download:
Santa.inc
3DTryg.inc
ColAndreas Plugin
Notice:
Filterscript not exist because filterscripts have limits.
This has been replaced by include, having automatic installation, efficient GameMode/FilterScript.
|
|
|
Missile (Missile Launcher) |
Posted by: AbyssMorgan - 2021-04-18, 01:03 PM - Forum: Libraries
- No Replies
|
 |
Hi I would like to present include for Missile Launcher.
Video:
- Sniper Missile
- Vehicle Missile (MapAndreas Version)
- Vehicle Missile (ColAndreas Update)
- Marica Mortar V1
- Heavy Marica Mortar
- Missile Launcher Aim Player
- Congreve Rocket
- Marica Mortar V2
- New Vehicle Missile
- Flares
Functions:
Code: Missile::Launch(type,Float:detection_range,Float:explode_radius,Float:speed,Float:x,Float:y,Float:z,worldid,interiorid,playerid,Float:streamdistance,missile_object,Float:tx,Float:ty,Float:tz,byplayerid=INVALID_PLAYER_ID,teamid=ANY_TEAM,bool:remote=false,remote_count=MAX_MISSILE_REMOTE_TARGET,remote_height=1.0,Float:arc_roll=0.0,Float:damage=-1.0,Float:vehicle_damage=-1.0);
type - explosion type //https://wiki.sa-mp.com/wiki/Explosion_List
Float:detection_range - detection range player/vehicle
Float:explode_radius - the explosion range (the same as in CreateExplosion)
Float:speed - projectile speed
Float:x, Float:y, Float:z - Starting position
worldid, interiorid, playerid, Float:streamdistance - the same as in CreateDynamicObject
missile_object: MISSILE_OBJECT_NORMAL / MISSILE_OBJECT_BIG / MISSILE_OBJECT_HYDRA / MISSILE_OBJECT_BOMB / MISSILE_OBJECT_BOMB_STATIC / MISSILE_OBJECT_FLARE
Float:tx, Float:ty, Float:tz - Target position
byplayerid - selected player will be immune to detection range
teamid - player team will be immune to detection range
remote - enable remote targeting (for Vehicle Missile Mortar)
remote_count - number of remote targeting 1 - 32
remote_height - arc height
arc_roll - rotation Y axis
Float:damage - player damage on explosion created
Float:vehicle_damage - vehicle damage on explosion created
Rotation: Auto!
Missile::LaunchAimPlayer(targetid,type,Float:detection_range,Float:explode_radius,Float:speed,Float:x,Float:y,Float:z,worldid,interiorid,playerid,Float:streamdistance,missile_object,Float:tx,Float:ty,Float:tz,byplayerid=INVALID_PLAYER_ID,teamid=ANY_TEAM,Float:damage=-1.0,Float:vehicle_damage=-1.0);
Missile::StopAimPlayer(mobid);
Missile::Destroy(mobid,type,playerid);
Missile::RemoteTarget(mobid,Float:tx,Float:ty,Float:tz,Float:speed = 0.0);
Missile::GetExplodeVisibility();
Missile::SetExplodeVisibility(Float:explode_stream);
Missile::DisableAllAim(playerid);
Misile::GetObject(mobid);
Misile::GetArea(mobid);
Misile::GetType(mobid);
Misile::GetExplode(mobid);
Misile::GetPlayer(mobid);
Misile::GetTeamID(mobid);
Misile::GetVehicle(mobid);
Misile::GetRemoteCount(mobid);
Misile::GetRemoteID(mobid);
Misile::GetSpeed(mobid);
Misile::GetTargetID(mobid);
Misile::GetDamage(mobid);
Misile::GetVehicleDamage(mobid);
Callbacks:
Code: OnMissileDestroy(mobid,Float:x,Float:y,Float:z,type,killerid,byplayerid);
types:
MISSILE_DESTROY_TYPE_TARGET? //When rocket reaches its destination (always killerid=INVALID_PLAYER_ID)
MISSILE_DESTROY_TYPE_DETECT? //When rocket has been destroyed by detection range
MISSILE_DESTROY_TYPE_KILL? ? //When rocket has been destroyed by player
OnMissileDetectPlayer(playerid,killerid); //called when a player is within range of detection range
OnMissileRequestLaunch(Float:x,Float:y,Float:z,playerid,targetid);
Example Code:
Code: public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ){
if(weaponid == 34){
new Float:x, Float:y, Float:z,
Float:tx, Float:ty, Float:tz,
Float:rx, Float:rz,
vw, int, Float:dist;
GetPlayerPos(playerid,x,y,z);
GetRotationFor2Point3D(x,y,z,fX,fY,fZ,rx,rz);
dist = GetDistanceBetweenPoints3D(x,y,z,fX,fY,fZ);
vw = GetPlayerVirtualWorld(playerid);
int = GetPlayerInterior(playerid);
GetPointInFront3D(x,y,z,rx,rz,4.0,tx,ty,tz);
Missile::Launch(MISSILE_TYPE_EXPLODE_HUGE,4.0,25.0,35.0,tx,ty,tz,vw,int,-1,300.0,MISSILE_OBJECT_HYDRA,fX,fY,fZ,playerid,.damage=100.0,.vehicle_damage=1000.0);
GetPointInFront3D(x,y,z,rx,rz,3.0,tx,ty,tz);
Missile::Launch(MISSILE_TYPE_EXPLODE_HUGE,4.0,25.0,35.0,tx,ty,tz.0,vw,int,-1,300.0,MISSILE_OBJECT_HYDRA,fX,fY,fZ.0,playerid,.damage=100.0,.vehicle_damage=1000.0);
Missile::Launch(MISSILE_TYPE_EXPLODE_HUGE,4.0,25.0,35.0,tx,ty,tz-3.0,vw,int,-1,300.0,MISSILE_OBJECT_HYDRA,fX,fY,fZ-3.0,playerid,.damage=100.0,.vehicle_damage=1000.0);
GetPointInFront3D(tx,ty,tz,rx,rz.0,3.0,x,y,z);
GetPointInFront3D(x,y,z,rx,rz,dist,fX,fY,fZ);
Missile::Launch(MISSILE_TYPE_EXPLODE_HUGE,4.0,25.0,35.0,x,y,z,vw,int,-1,300.0,MISSILE_OBJECT_HYDRA,fX,fY,fZ,playerid,.damage=100.0,.vehicle_damage=1000.0);
GetPointInFront3D(tx,ty,tz,rx,rz-90.0,3.0,x,y,z);
GetPointInFront3D(x,y,z,rx,rz,dist,fX,fY,fZ);
Missile::Launch(MISSILE_TYPE_EXPLODE_HUGE,4.0,25.0,35.0,x,y,z,vw,int,-1,300.0,MISSILE_OBJECT_HYDRA,fX,fY,fZ,playerid,.damage=100.0,.vehicle_damage=1000.0);
}
return 1;
}
Bullet example:
Code: Missile::Launch(MISSILE_TYPE_EXPLODE_NONE,1.0,1.0,20.0,Float:x,Float:y,Float:z,worldid,interiorid,playerid,Float:streamdistance,MISSILE_OBJECT_BULLET,Float:tx,Float:ty,Float:tz,byplayerid=INVALID_PLAYER_ID,teamid=ANY_TEAM,.damage=5.0,.vehicle_damage=25.0);
How to check is player kill by missile (this is not required if you using custom missile damage):
Code: enums:
last_missile_shot
last_missile_player
public OnMissileDestroy(mobid,Float:x,Float:y,Float:z,type,killerid,byplayerid){
if(type == MISSILE_DESTROY_TYPE_DETECT && killerid != INVALID_PLAYER_ID){
PlayerInfo[killerid][last_missile_shot] = GetTickCount();
PlayerInfo[killerid][last_missile_player] = byplayerid;
}
return 1;
}
public OnMissileDetectPlayer(playerid,killerid){
if(killerid != INVALID_PLAYER_ID){
PlayerInfo[playerid][last_missile_shot] = GetTickCount();
PlayerInfo[playerid][last_missile_player] = killerid;
}
? ? return 1;
}
public OnPlayerDeath(playerid, killerid, reason){
if(PlayerInfo[playerid][last_missile_player] != INVALID_PLAYER_ID && reason > 46 && playerid != killerid){
if(GetTickCount()-PlayerInfo[playerid][last_missile_shot] < 2000){
killerid = PlayerInfo[playerid][last_missile_player];
reason = 51;
}
}
//your code
return 1;
}
Download:
Missile.inc
3DTryg.inc
ColAndreas Plugin
|
|
|
Hunting System |
Posted by: AbyssMorgan - 2021-04-18, 12:54 PM - Forum: Filterscripts
- Replies (1)
|
 |
Hello, I would like to present you the Hunting System.
Video:
https://www.youtube.com/watch?v=gySSTtjFRB0
Functions:
Code: Hunting::Create(type,Float:x,Float:y,Float:z,Float:health,respawntime,worldid=-1,interiorid=-1,playerid=-1,Float:streamdistance=200.0,moving_area = 0);
Hunting::Destroy(mobid);
Hunting::Respawn(mobid);
Hunting::ForceRespawn(mobid,Float:x,Float:y,Float:z);
Hunting::Kill(mobid,playerid=INVALID_PLAYER_ID);
Hunting::Stop(mobid,delay=-1);
Hunting::GoTo(mobid,Float:x,Float:y,bool:disable_moving=false);
Hunting::GetDrop(mobid);
Hunting::SetDrop(mobid,drop);
Hunting::GetPos(mobid,Float:x,Float:y,Float:z);
Hunting::SetPos(mobid,Float:x,Float:y,Float:z,bool:disable_moving=false);
Hunting::GetScaredRange(mobid);
Hunting::SetScaredRange(mobid,Float:range);
Hunting::GetHealth(mobid);
Hunting::SetHealth(mobid,Float:health);
Hunting::GetSpawnHealth(mobid);
Hunting::SetSpawnHealth(mobid,Float:health);
Hunting::GetRespawnTime(mobid);
Hunting::SetRespawnTime(mobid,respawntime);
Hunting::GetSpawn(mobid,&Float:x,&Float:y,&Float:z);
Hunting::SetSpawn(mobid,Float:x,Float:y,Float:z);
Hunting::GetInterior(mobid);
Hunting::SetInterior(mobid,interiorid);
Hunting::GetVirtualWorld(mobid);
Hunting::SetVirtualWorld(mobid,worldid);
Hunting::GetSpeed(mobid);
Hunting::SetSpeed(mobid,Float:speed);
Hunting::GetPressTime(mobid);
Hunting::SetPressTime(mobid,miliseconds);
Hunting::GetFacingAngle(mobid);
Hunting::SetCalmTime(mobid,time=0);
Hunting::IsPlayerInRange(playerid,mobid,Float:range);
Hunting::IsToggledMoving(mobid);
Hunting::ToggleMoving(mobid,toggle);
Hunting::IsValid(mobid);
Hunting::IsSpawned(mobid);
Hunting::IsDead(mobid);
Hunting::IsScared(mobid);
Hunting::IsStopped(mobid);
Hunting::IsMoving(mobid);
Extended Functions:
Code: Hunting::Count();
Hunting::GetKey();
Hunting::SetKey(key);
Hunting::GetFreeID();
Hunting::GetActiveMob(playerid,mob_state);
Callbacks:
Code: OnPlayerTakeHuntDrop(playerid,mobid,drop);
OnPlayerKillHuntAnimal(playerid,mobid);
OnPlayerApproachingAnimal(playerid,mobid,mob_state);
OnPlayerExitApproachingAnimal(playerid,mobid,mob_state);
OnAnimalTakeDamage(mobid,playerid,Float:amount,weaponid);
OnHuntAnimalRespawn(mobid);
OnAnimalScareStateChanged(mobid,playerid,isscared);
OnPlayerHuntDropStateChange(playerid,mobid,drop_state); //only called if press time > 0
Definitions:
Code: //Config
MAX_HUNTING_ANIMALS? ? //default is 100 allowed to redefine
HUNTING_UPDATE_INTERVAL //default is 500 allowed to redefine
//Animal types
HUNTING_TYPE_COW
HUNTING_TYPE_DEER
//Animal state
HUNTING_STATE_DESTROYED //animal not exist
HUNTING_STATE_SPAWNED? //animal is spawned
HUNTING_STATE_DEAD? ? ? //animal is dead
//Drop State
HUNTING_DROP_STATE_FINISH
HUNTING_DROP_STATE_START
HUNTING_DROP_STATE_INTERRUPT
//Other
INVALID_HUNTING_ID
HUNTING_NO_AUTO_RESPAWN //disable auto respawn (respawntime param)
Example Pawn Code:
Code: #include <a_samp>
#include <streamer>
#include <ColAndreas>
#include <3DTryg>
#include <Hunting>
public OnFilterScriptInit(){
new my_zone = CreateDynamicRectangle(-100.0,-100.0,100.0,100.0);
for(new i = 0; i < 5; i){
Hunting::Create(HUNTING_TYPE_COW,0.0,0.0,3.0,55.0,30,.moving_area=my_zone);
Hunting::Create(HUNTING_TYPE_DEER,5.0,0.0,3.0,55.0,30,.moving_area=my_zone);
}
return 1;
}
public OnPlayerTakeHuntDrop(playerid,mobid,drop){
if(drop){
SendClientMessage(playerid,-1,"You received $2500");
GivePlayerMoney(playerid,2500);
}
return 0; //set drop flag 0
}
public OnPlayerKillHuntAnimal(playerid,mobid){
SendClientMessage(playerid,-1,"Animal has been killed !");
return 1;
}
public OnPlayerApproachingAnimal(playerid,mobid,mob_state){
if(mob_state == HUNTING_STATE_DEAD){
SendClientMessage(playerid,-1,"Press Y to raise prize.");
}
return 1;
}
public OnPlayerExitApproachingAnimal(playerid,mobid,mob_state){
return 1;
}
public OnAnimalTakeDamage(mobid,playerid,Float:amount,weaponid){
if(weaponid != 34) return 0; //sniper only :D
return 1;
}
public OnHuntAnimalRespawn(mobid){
return 1;
}
public OnAnimalScareStateChanged(mobid,playerid,isscared){
return 1;
}
//only called if press time > 0
public OnPlayerHuntDropStateChange(playerid,mobid,drop_state){
switch(drop_state){
case HUNTING_DROP_STATE_FINISH: {
//your code
}
case HUNTING_DROP_STATE_START: {
//your code
}
case HUNTING_DROP_STATE_INTERRUPT: {
//your code
}
}
return 1;
}
Download:
Hunting.inc
3DTryg.inc
ColAndreas Plugin
Notice:
Filterscript not exist because filterscripts have limits.
This has been replaced by include, having automatic installation, efficient GameMode/FilterScript.
|
|
|
|