Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*||===========Creditos===========||
- || ||
- || Scripter: CH4øZ ||
- || Idea: Wheelmandts ||
- || ||
- || [email protected] ||
- ||==============================||*/
- #include <a_samp>
- #include <Dini>
- #define COLOR_WHITE 0xFFFFFFAA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_RED 0xFF0000AA
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" In Game Teleport Maker Loaded");
- print("--------------------------------------\n");
- return 1;
- }
- public OnFilterScriptExit()
- {
- print("\n--------------------------------------");
- print(" In Game Teleport Maker Unloaded");
- print("--------------------------------------\n");
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[256], idx;
- cmd = strtok(cmdtext, idx);
- if(strcmp(cmd, "/crear", true) == 0)
- {
- new tmp[256], tmp2[256], file[256];
- tmp = strtok(cmdtext,idx);
- tmp2 = strrest(cmdtext,idx);
- format(file, sizeof(file), "/Teleports.txt");
- if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "Uso: /comando <nombre> [opcional: con auto]<true/false>");
- if(strlen(tmp) > 10)return SendClientMessage(playerid, COLOR_RED, "ERROR: El nombre es muy largo");
- if(strlen(tmp2)){
- if(strcmp(tmp2, "true", true) != 0 && strcmp(tmp2, "false", true) != 0)return SendClientMessage(playerid, COLOR_RED, "ERROR: debes poner true o false en el 2º parametro");
- }else format(tmp2, sizeof(tmp2), "true");
- if(dini_Isset(file, tmp))return SendClientMessage(playerid, COLOR_RED, "ERROR: Ese lugar ya existe");
- new Float:X, Float:Y, Float:Z, Float:A, I, Vw, str[11], str2[128];
- GetPlayerPos(playerid, X, Y, Z);
- GetPlayerFacingAngle(playerid, A);
- I = GetPlayerInterior(playerid);
- Vw = GetPlayerVirtualWorld(playerid);
- if(!dini_Exists(file))dini_Create(file);
- dini_Set(file, tmp, "1");
- format(str, sizeof(str), "%sX", tmp);
- dini_FloatSet(file, str, X);
- format(str, sizeof(str), "%sY", tmp);
- dini_FloatSet(file, str, Y);
- format(str, sizeof(str), "%sZ", tmp);
- dini_FloatSet(file, str, Z);
- format(str, sizeof(str), "%A", tmp);
- dini_FloatSet(file, str, A);
- format(str, sizeof(str), "%sI", tmp);
- dini_IntSet(file, str, I);
- format(str, sizeof(str), "%sVw", tmp);
- dini_IntSet(file, str, Vw);
- format(str, sizeof(str), "%sC", tmp);
- dini_Set(file, str, tmp2);
- format(str2, sizeof(str2), "Has creado un nuevo teleport, usa /lugar %s para ir a el", tmp);
- SendClientMessage(playerid, COLOR_YELLOW, str2);
- return 1;
- }
- if(strcmp(cmd, "/ir", true) == 0){
- new tmp[256];
- tmp = strtok(cmdtext,idx);
- if(!strlen(tmp))return SendClientMessage(playerid, COLOR_WHITE, "Uso: /lugar <nombre>");
- new file[256];
- format(file, sizeof(file), "/Teleports.txt");
- if(!dini_Isset(file, tmp))return SendClientMessage(playerid, COLOR_RED, "ERROR: Ese lugar no existe");
- new Float:X, Float:Y, Float:Z, Float:A, I, Vw, str[128], car[256];
- format(str, sizeof(str), "%sX", tmp);
- X = dini_Float(file, str);
- format(str, sizeof(str), "%sY", tmp);
- Y = dini_Float(file, str);
- format(str, sizeof(str), "%sZ", tmp);
- Z = dini_Float(file, str);
- format(str, sizeof(str), "%sA", tmp);
- A = dini_Float(file, str);
- format(str, sizeof(str), "%sI", tmp);
- I = dini_Int(file, str);
- format(str, sizeof(str), "%sVw", tmp);
- Vw = dini_Int(file, str);
- format(str, sizeof(str), "%sC", tmp);
- car = dini_Get(file, str);
- if(strcmp(car, "true", true) == 0){
- if(IsPlayerInAnyVehicle(playerid)){
- SetVehiclePos(GetPlayerVehicleID(playerid), X, Y, Z);
- SetVehicleZAngle(GetPlayerVehicleID(playerid), A);
- LinkVehicleToInterior(GetPlayerVehicleID(playerid), I);
- SetVehicleVirtualWorld(GetPlayerVehicleID(playerid), Vw);
- }
- else{
- SetPlayerPos(playerid, X, Y, Z);
- SetPlayerFacingAngle(playerid, A);
- SetPlayerInterior(playerid, I);
- SetCameraBehindPlayer(playerid);
- SetPlayerVirtualWorld(playerid, Vw);
- }
- }
- else{
- SetPlayerPos(playerid, X, Y, Z);
- SetPlayerFacingAngle(playerid, A);
- SetPlayerInterior(playerid, I);
- SetCameraBehindPlayer(playerid);
- SetPlayerVirtualWorld(playerid, Vw);
- }
- format(str, sizeof(str), "Has sido teletransportado a %s", tmp);
- SendClientMessage(playerid, COLOR_YELLOW, str);
- return 1;
- }
- return 0;
- }
- stock strrest(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[128];
- while ((index < length) && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement