Basssss Geplaatst: 11 april 2009 Rapport Geplaatst: 11 april 2009 Hallo, ik heb nu zo gemaakt dat als je in een Marquis stapt, een piratenschip je attacht. (Met AttachObjectToPlayer) Zodat het net lijkt of je met een piratenschip vaart. Maar nu wil ik dat als je uitstapt, het piratenschip stopt met attachen en stil blijft liggen op de plek waar je uitstapt. (De Marquis moet destroyed worden en jij moet op het schip spawnen) Maar ik krijg dit met geen mogelijkheid voor elkaar. Ik heb veel manieren geprobeert, maar kom er gewoon niet uit. Het probleem is dat het piratenschip je blijft attachen nadat je uitstapt. Weet iemand hoe ik het voor elkaar krijg dat het schip stopt met attachen na het uitstappen? Alvast bedankt. Reageren
D-V-D-K Geplaatst: 12 april 2009 Rapport Geplaatst: 12 april 2009 Volgensmij is er geen ene mogelijkheid om het attachen te stoppen, wat ik wel weet is dat als je dood gaat dan stop het attachen wel. Reageren
Basssss Geplaatst: 12 april 2009 Auteur Rapport Geplaatst: 12 april 2009 Volgensmij is er geen ene mogelijkheid om het attachen te stoppen, wat ik wel weet is dat als je dood gaat dan stop het attachen wel. Met DestroyObject stopt ie met attachen, maar dan is ie ook gelijk helemaal weg. Weet verder niemand hoe ik dit voor elkaar krijg? Reageren
Basssss Geplaatst: 12 april 2009 Auteur Rapport Geplaatst: 12 april 2009 StopObject(NaamObject); ? Werkt niet, het schip verdwijnt compleet na uitstappen. Reageren
JayKay Geplaatst: 12 april 2009 Rapport Geplaatst: 12 april 2009 StopObject(NaamObject); ? Werkt niet, het schip verdwijnt compleet na uitstappen. StopPlayerObject(playerid, objectid); Is weer iets anders dan D-V-D-K noemde, probeer dat eens. Reageren
D-V-D-K Geplaatst: 12 april 2009 Rapport Geplaatst: 12 april 2009 StopObject(NaamObject); ? Werkt niet, het schip verdwijnt compleet na uitstappen. StopPlayerObject(playerid, objectid); Is weer iets anders dan D-V-D-K noemde, probeer dat eens. Weet jij serieus wat dat betekend? StopPlayerObject en CreatePlayerObject en overal waar het woord ''player'' in zit geld alleen voor een player, dus als een voorwerp voor iedereen stoppen niet werkt, dan werkt het voorwerp stoppen voor 1 player ook niet. Reageren
jorD1 Geplaatst: 12 april 2009 Rapport Geplaatst: 12 april 2009 Misschien moet je het destroyen en weer gelijk create doen op de positie waar hij ligt. ? Reageren
Basssss Geplaatst: 12 april 2009 Auteur Rapport Geplaatst: 12 april 2009 Misschien moet je het destroyen en weer gelijk create doen op de positie waar hij ligt. ? Dat is een mogelijkheid, maar hoe krijg ik de coördinaten dan goed? Reageren
jorD1 Geplaatst: 12 april 2009 Rapport Geplaatst: 12 april 2009 (bewerkt) Misschien als een speler uitstapt GetPlayerPos gebruiken en dan CreateObject met de positie van de speler. Daarna doe je SetPlayerPos, weer dat coordinaat van GetPlayerPos, maar nu doe je bijv: Z +3 . (3 = het aantal omhoog om op het dek te komen) Edit: En daar achteraan doe je die marquis vernietigen. Misschien kan je in plaats van GetPlayerPos wel GetVehiclePos gebruiken(dat bestaat toch ook). Bewerkt: 12 april 2009 door jorD1 Reageren
Basssss Geplaatst: 12 april 2009 Auteur Rapport Geplaatst: 12 april 2009 Misschien als een speler uitstapt GetPlayerPos gebruiken en dan CreateObject met de positie van de speler. Daarna doe je SetPlayerPos, weer dat coordinaat van GetPlayerPos, maar nu doe je bijv: Z +3 .(3 = het aantal omhoog om op het dek te komen) Edit: En daar achteraan doe je die marquis vernietigen. Misschien kan je in plaats van GetPlayerPos wel GetVehiclePos gebruiken(dat bestaat toch ook). Hoe doe ik dat +3 dan? Reageren
Sandra Geplaatst: 12 april 2009 Rapport Geplaatst: 12 april 2009 Zoiets als: new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); SetObjectPos(objectid, X, Y, (Z+3)); Reageren
Basssss Geplaatst: 12 april 2009 Auteur Rapport Geplaatst: 12 april 2009 (bewerkt) Het zag er zo overtuigend uit, maar nu crasht de boel als ik wil uitstappen. public OnFilterScriptInit() { shiphull = CreateObject(8493,-5807,-5680,15.5,0,0,300); shipsail = CreateObject(9159,-5807,-5680,15.5,0,0,300); shiprope = CreateObject(8981,-5807.56,-5691.2,-15.1,0,0,300); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if (strcmp("/entership", cmdtext, true, 10) == 0) { testship = CreateVehicle(484,-5807,-5695,0,300,0,0,0); LinkVehicleToInterior(testship,1); PutPlayerInVehicle(playerid,testship,0); return 1; } return 0; } public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER) { if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 484) { AttachObjectToPlayer(shiphull,playerid,0,15,15.5,0,0,0); AttachObjectToPlayer(shipsail,playerid,0,15,15.5,0,0,0); AttachObjectToPlayer(shiprope,playerid,-0.56,8.8,15.1,0,0,0); } } return 1; } public OnPlayerExitVehicle(playerid,vehicleid) { if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 484) { new Float:X,Float:Y,Float:Z,Float:rX,Float:rY,Float:rZ; // Floats GetPlayerPos(playerid,X,Y,Z); // Kijkt naar positie player GetPlayerFacingAngle(playerid,rZ); // Kijkt naar rotatie player DestroyObject(shiphull); DestroyObject(shipsail); // Destroyed objecten DestroyObject(shiprope); RemovePlayerFromVehicle(playerid); DestroyVehicle(testship); CreateObject(shiphull,X,(Y+15),(Z+15.5),rX,rY,rZ); CreateObject(shipsail,X,(Y+15),(Z+15.5),rX,rY,rZ); // Create ze weer CreateObject(shiprope,(X+-0.56),(Y+8.8),(Z+15.1),rX,rY,rZ); SetPlayerPos(playerid,X,Y,(Z+3)); SetPlayerFacingAngle(playerid,rZ); } return 1; } Bewerkt: 15 april 2009 door Basssss Reageren
Big Boss Geplaatst: 15 april 2009 Rapport Geplaatst: 15 april 2009 Eén ding weet ik je alvast wel te vertellen: Die boot werkt maar voor 1 speler. Als iemand in een Marquis stapt, wordt die boot (shiphull, etc) geattached aan die speler. Als nu iemand anders OOK in een Marquis stapt, worden diezelfde objecten bij de andere speler geplaatst. new shiphull[MAX_PLAYERS]; new shipsale[MAX_PLAYERS]; new shiprope[MAX_PLAYERS]; public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER) { if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 484) { shiphull[playerid] = CreateObject(8493,-5807,-5680,15.5,0,0,300); shipsail[playerid] = CreateObject(9159,-5807,-5680,15.5,0,0,300); shiprope[playerid] = CreateObject(8981,-5807.56,-5691.2,-15.1,0,0,300); AttachObjectToPlayer(shiphull[playerid],playerid,0,15,15.5,0,0,0); AttachObjectToPlayer(shipsail[playerid],playerid,0,15,15.5,0,0,0); AttachObjectToPlayer(shiprope[playerid],playerid,-0.56,8.8,15.1,0,0,0); } } return 1; } Reageren
Recommended Posts
Een reactie plaatsen
Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.