Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*############################################################################################################################
- ## ____ __ __ ______ ____ ____ __ ##
- ## /\ _`\ /\ \/\ \ /\__ _\/\ _`\ /\ _`\ /\ \__ ##
- ## \ \ \/\ \ __ __ ___\ \ \/'/' \/_/\ \/\ \ \L\ \ \,\L\_\ __ __ ____\ \ ,_\ __ ___ ___ ##
- ## \ \ \ \ \/\ \/\ \ /'___\ \ , < \ \ \ \ \ ,__/\/_\__ \ /\ \/\ \ /',__\\ \ \/ /'__`\/' __` __`\ ##
- ## \ \ \_\ \ \ \_\ \/\ \__/\ \ \\`\ \ \ \ \ \ \/ /\ \L\ \ \ \_\ \/\__, `\\ \ \_/\ __//\ \/\ \/\ \ ##
- ## \ \____/\ \____/\ \____\\ \_\ \_\ \ \_\ \ \_\ \ `\____\/`____ \/\____/ \ \__\ \____\ \_\ \_\ \_\ ##
- ## \/___/ \/___/ \/____/ \/_/\/_/ \/_/ \/_/ \/_____/`/___/> \/___/ \/__/\/____/\/_/\/_/\/_/ ##
- ## /\___/ ##
- ## \/__/ ##
- ## DucK's Teleport System. V2 ##
- ## How To Add New Teleport: ##
- ## Command: Command Name. Example: "/Race" ##
- ## Teleport Message: The Message That Will Be Send. Example: "Welcome To The Race Area" ##
- ## Description (For Teles Dialog). Example: "Race Area" ##
- ## X, Y, Z, A, - Location. Example: 1253.1231, 3535.1212, 10.3513, 254.395 ##
- ## MinHP - Minimum Health For Teleporting. Example: 30.0 (Doesn't Matter? 0.0) ##
- ## Price - How Much Money Will It Coast To Teleport. Example: 100 (For Free: 0) ##
- ## AllowVehicle - Can Teleport With Vehicle. (only true/false) Example: true ##
- ## FullHealth - Full Health On Teleport? (only true/false) Example: false ##
- ## FullArmour - Full Armour On Teleport? (only true/false) Example: true ##
- ## LimitUses - Limit The Amount Of Times You Can Use The Command? (only true/false) Example: false ##
- ## MaxUses - Amount Of Times You Can Use The Command. Example: 5 ##
- ## ##
- ############################################################################################################################
- */
- #include <a_samp>
- #define TDialog 198
- #define MessageC 0xFFFF00
- enum TeleInfo
- {
- Teleport[40],
- Message[128],
- DescriptionForDialog[128],
- Float:PosX,
- Float:PosY,
- Float:PosZ,
- Float:PosA,
- Float:MinHP,
- Price,
- bool:AllowVehicle,
- bool:FullHealth,
- bool:FullArmour,
- bool:LimitUses,
- MaxUses
- };
- new TeleVar[][TeleInfo] =
- {
- // {"/Command", "Teleport Message", "Description", X, Y, Z, A, MinHP, Price, AllowVehicle T/F, FullHealth T/F, FullArmr T/F, LimitUses T/F, MaxUses},
- {"/Fire", "Welcome To LV Fire Dept.", "Fire Departement", 1769.8323,2077.5061,11.0557,180.9239, 10.0, 70, false, false, true, false, 3},
- {"/Ap", "Welcome To LV Airport", "3rd City Airport", 1690.1625,1586.6245,10.8203,301.0207, 0.0, 0, true, true, true, false, 100},
- {"/Pizza", "Welcome To Pizza", "3rd City Pizzeria", 2086.8240,2221.6465,10.8203,359.2769, 0.0, 700, false, true, false, true, 3},
- {"/Race", "Welcome To LV Race", "Racing Area", 2041.9771,827.3279,6.3358,310.3958, 0.0, 1000, true, false, false, true, 2}
- };
- new Used[MAX_PLAYERS][sizeof(TeleVar)];
- public OnPlayerConnect(playerid)
- {
- for(new i = 0; i < sizeof(TeleVar); i++)
- {
- Used[playerid][i] = 0;
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- for(new i = 0; i<sizeof(TeleVar); i++)
- {
- if(!strcmp(cmdtext, TeleVar[i][Teleport], true))
- {
- new Float:HPS;
- GetPlayerHealth(playerid, HPS);
- if(Used[playerid][i] >= TeleVar[i][MaxUses] && TeleVar[i][LimitUses]) return SendClientMessage(playerid, -1, "{FF0000}Error: {FFFFFF}You Have Used The Maximum Allowed Uses Of This Teleport");
- if(HPS < TeleVar[i][MinHP]) return SendClientMessage(playerid, -1, "{FF0000}Error: {FFFFFF}You Don't Have Enough Health To Teleport");
- if(GetPlayerMoney(playerid) < TeleVar[i][Price]) return SendClientMessage(playerid, -1, "{FF0000}Error: {FFFFFF}You Don't Have Enough Money To Teleport");
- if(IsPlayerInAnyVehicle(playerid) && !TeleVar[i][AllowVehicle]) return SendClientMessage(playerid, -1, "{FF0000}Error: {FFFFFF}You Can't Teleport With Vehicle");
- Used[playerid][i]++;
- GivePlayerMoney(playerid, -TeleVar[i][Price]);
- if(TeleVar[i][FullHealth]) SetPlayerHealth(playerid, 100.0);
- if(TeleVar[i][FullArmour]) SetPlayerArmour(playerid, 100.0);
- SendClientMessage(playerid, MessageC, TeleVar[i][Message]);
- if(IsPlayerInAnyVehicle(playerid))
- {
- SetVehiclePos(GetPlayerVehicleID(playerid), TeleVar[i][PosX], TeleVar[i][PosY], TeleVar[i][PosZ]);
- SetVehicleZAngle(GetPlayerVehicleID(playerid), TeleVar[i][PosA]);
- }
- else
- {
- SetPlayerPos(playerid, TeleVar[i][PosX], TeleVar[i][PosY], TeleVar[i][PosZ]);
- SetPlayerFacingAngle(playerid, TeleVar[i][PosA]);
- }
- return 1;
- }
- }
- if(!strcmp(cmdtext, "/Teles", true))
- {
- new str[1024];
- format(str, sizeof(str), "");
- for(new i = 0; i<sizeof(TeleVar); i++)
- {
- format(str, sizeof(str), "%s\n{FFFF00}%s {FFFFFF}(%s)", str, TeleVar[i][Teleport], TeleVar[i][DescriptionForDialog]);
- ShowPlayerDialog(playerid, TDialog, DIALOG_STYLE_LIST, "{FF0000}Teleports Dialog", str, "Teleport", "Cancel");
- }
- return 1;
- }
- return 0;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == TDialog && response) return OnPlayerCommandText(playerid, TeleVar[listitem][Teleport]);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment