#include <a_samp>#include <zcmd> //ha nincs meg az include az FS nem fog mûködni!#define DIALOG_VVILAG 1#define PIROS 0xff0000AApublic OnFilterScriptInit(){print(\"\\n--------------------------------------\");print(\" Világváltó parancs!\");print(\"--------------------------------------\\n\");return 1;}public OnFilterScriptExit(){return 1;} public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){if(dialogid == DIALOG_VVILAG){ if(listitem == 0) { SetPlayerVirtualWorld(playerid,0); SendClientMessage(playerid,PIROS,\"Sikeresen átállítottad a világod: 0\"); } if(listitem == 1) { SetPlayerVirtualWorld(playerid,1); SendClientMessage(playerid,PIROS,\"Sikeresen átállítottad a világod: 1\"); }}return 1;}CMD:vilag(playerid,params[]){ ShowPlayerDialog(playerid, DIALOG_VVILAG, DIALOG_STYLE_LIST, \"Válassz világot!!\", \"Világ 0\\nVilág 1\", \"Rendben\", \"Mégsem\"); return 1;}
Szia!Gyorsan készítettem neked egyet #include <a_samp>#include <zcmd> //ha nincs meg az include az FS nem fog mûködni!#define DIALOG_VVILAG 1#define PIROS 0xff0000AApublic OnFilterScriptInit(){print(\"\\n--------------------------------------\");print(\" Világváltó parancs!\");print(\"--------------------------------------\\n\");return 1;}public OnFilterScriptExit(){return 1;} public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){if(dialogid == DIALOG_VVILAG){ if(listitem == 0) { SetPlayerVirtualWorld(playerid,0); SendClientMessage(playerid,PIROS,\"Sikeresen átállítottad a világod: 0\"); } if(listitem == 1) { SetPlayerVirtualWorld(playerid,1); SendClientMessage(playerid,PIROS,\"Sikeresen átállítottad a világod: 1\"); }}return 1;}CMD:vilag(playerid,params[]){ ShowPlayerDialog(playerid, DIALOG_VVILAG, DIALOG_STYLE_LIST, \"Válassz világot!!\", \"Világ 0\\nVilág 1\", \"Rendben\", \"Mégsem\"); return 1;}
Igen.Nem értelmeztem jól a leírását. Bocsánat :$
Bocs a fogalmazásért, de fáradt voltam.
Ezt nem értem..Ha azt szeretnéd hogy a 0 és az 1-es világba is látszódjanak a kocsik, vagy a map, akkor már alap úgy kell létrehoznod azokat!Gondolok itt arra .. hogy ha az 1es világba vagy, akkor hiába hívod le a kocsit a 0-s világba.. nem fog megjelenni!Ezt könnyen ki lehet küszöbölni.. mégpedig:Amikor lekérjük a kocsit a /v paranccsal, akkor egy sorral lentebb használjuk a SetVehicleVirtualWorld(kocsid, virtuális világ); parancsot, mellyel átlehet rakni a kocsinak a virtuális világát..én ezt használom: dcmd_v(playerid, params[]){new Index; new tmp[256]; tmp = strtok(params,Index);new tmp2[256]; tmp2 = strtok(params,Index);new tmp3[256]; tmp3 = strtok(params,Index); if(!strlen(tmp)) returnSendClientMessage(playerid, red, \"Használat: /v [modelid/jármûnév] [szín1] [szín2]\");new car;new string[128];new colour1, colour2; if(!IsNumeric(tmp)) car = GetVehicleModelIDFromName(tmp); else car = strval(tmp);if(car < 400 || car > 611) return SendClientMessage(playerid, red, \"Hiba: Nincs ilyen jármû!\");if(car == 406 || car == 425 || car == 432 || car == 444 || car == 520 || car == 553 || car == 577 || car == 592) return SendClientMessage(playerid, red, \"TILTOTT JÁRMÛ!\");if(car == 407 || car == 408) return SendClientMessage(playerid, red, \"TILTOTT JÁRMÛ!\");if(!strlen(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3); if(SpawnedVehicles[playerid] != 0) DestroyVehicle(SpawnedVehicles[playerid]);new Float:X,Float:Y,Float:Z;new Float:Angle,int1;new LVehicleID = GetPlayerVehicleID(playerid);GetPlayerPos(playerid, X,Y,Z);GetPlayerFacingAngle(playerid,Angle);int1 = GetPlayerInterior(playerid);SpawnedVehicles[playerid] = CreateVehicle(car, X+3,Y,Z, Angle, colour1, colour2, -1);LinkVehicleToInterior(LVehicleID,int1);PlayerPlaySound(playerid,1085,0,0,0);PutPlayerInVehicle(playerid,SpawnedVehicles[playerid],0);format(string, sizeof(string), \"Jármû lerakva! Név: %s | (Model ID: %d) | Szín1: %d, Szín2: %d\", VehicleNames[car-400], car, colour1, colour2);return SendClientMessage(playerid,lightblue,string);} Esetünkben, a kocsinak a spawnolásakor egy ilyen parancsra lesz szükségünk: /*Ezt oda ahova akarod.. valahova a mod elejére..*/new jatekosvilaga;//változójatekosvilaga = GetPlayerVirtualWorld(playerid);//lekérés beállítása/*Ezt oda ahol a kocsi spawnolása van.. tehát. a dialog response-nél az összes lehetõséghez:D*/SetVehicleVirtualWorld(vehicleid, jatekosvilaga);//Kocsi áttevése a világba
SetVehicleVirtualWorld(kocsid, virtuális világ);
dcmd_v(playerid, params[]){new Index; new tmp[256]; tmp = strtok(params,Index);new tmp2[256]; tmp2 = strtok(params,Index);new tmp3[256]; tmp3 = strtok(params,Index); if(!strlen(tmp)) returnSendClientMessage(playerid, red, \"Használat: /v [modelid/jármûnév] [szín1] [szín2]\");new car;new string[128];new colour1, colour2; if(!IsNumeric(tmp)) car = GetVehicleModelIDFromName(tmp); else car = strval(tmp);if(car < 400 || car > 611) return SendClientMessage(playerid, red, \"Hiba: Nincs ilyen jármû!\");if(car == 406 || car == 425 || car == 432 || car == 444 || car == 520 || car == 553 || car == 577 || car == 592) return SendClientMessage(playerid, red, \"TILTOTT JÁRMÛ!\");if(car == 407 || car == 408) return SendClientMessage(playerid, red, \"TILTOTT JÁRMÛ!\");if(!strlen(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3); if(SpawnedVehicles[playerid] != 0) DestroyVehicle(SpawnedVehicles[playerid]);new Float:X,Float:Y,Float:Z;new Float:Angle,int1;new LVehicleID = GetPlayerVehicleID(playerid);GetPlayerPos(playerid, X,Y,Z);GetPlayerFacingAngle(playerid,Angle);int1 = GetPlayerInterior(playerid);SpawnedVehicles[playerid] = CreateVehicle(car, X+3,Y,Z, Angle, colour1, colour2, -1);LinkVehicleToInterior(LVehicleID,int1);PlayerPlaySound(playerid,1085,0,0,0);PutPlayerInVehicle(playerid,SpawnedVehicles[playerid],0);format(string, sizeof(string), \"Jármû lerakva! Név: %s | (Model ID: %d) | Szín1: %d, Szín2: %d\", VehicleNames[car-400], car, colour1, colour2);return SendClientMessage(playerid,lightblue,string);}
/*Ezt oda ahova akarod.. valahova a mod elejére..*/new jatekosvilaga;//változójatekosvilaga = GetPlayerVirtualWorld(playerid);//lekérés beállítása/*Ezt oda ahol a kocsi spawnolása van.. tehát. a dialog response-nél az összes lehetõséghez:D*/SetVehicleVirtualWorld(vehicleid, jatekosvilaga);//Kocsi áttevése a világba