Szerző Téma: Player eltüntetése és samp keys kérdés és EditObject funkció probléma  (Megtekintve 2464 alkalommal)

0 Show voters
Hali! Egy olyan kérdésem lenne, hogy hogyan lehet eltüntetni az adott playert virtualworld , interior állítás nélkül, láttam már szervereken. Illetve ez miért rossz? Valamiért nem történik semmi ha lenyomom
 

if(newkeys == KEY_UP)

 
A másik problémám viszont ezzel lenne.
public OnPlayerEditDynamicObject(playerid, objectid, response, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz)

 
az objectid vlmiért teljesen más, beírtam a parancsnál h 978 és 1106-ot ad ki a fájlban.
« Utoljára szerkesztve: 2016. február 23. - 19:07:49 írta Zippanto »

Nem elérhető rewan

  • 960
    • Profil megtekintése
Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #1 Dátum: 2016. február 27. - 16:02:58 »
0 Show voters
Szerintem már megoldódott, de...
1. Nem tudok tökéletes megoldásról, az egyik, hogy SetPlayerPos máshova, a kamerát pedig helyben tartod,
illetve esetleg interiorba linkelsz egy járművet és berakod a playert, akkor azt hiszem a player sem látszik a járművel együtt.
2. KEY_UP-ot nem kérdezi le az KeyState-es public, a GetPlayerKeys() függvény használata lehetséges, például
OnPlayerUpdate(playerid) publicban, vagy egy timerben. Azzal le tudod kérni a fel-le, jobbra-balra tengelyeket is.
3. Ebből az alap public sorból semmi nem derül ki.

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #2 Dátum: 2016. február 27. - 19:43:42 »
0 Show voters
1. Azt majd megpróbálom, de szerintem menni fog. Amúgy fontos, hogy ott legyen a player, mert úgy tölt be az adott hely. (map,kocsik stb..)
2. Tökéletesen működik.
3.
 
public OnPlayerEditDynamicObject(playerid, objectid, response, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz)
{
if(response == EDIT_RESPONSE_FINAL)
{
    new string[56];
    getdate(ev,honap,nap);
gettime(ora,perc,masodperc);
format(string,sizeof(string),\"%d-%d-%d_%d:%d:%d\",ev,honap,nap,ora,perc,masodperc);
    new objid = UjObjectID();
    ObjectInfo[objid][ObjVan] = 1;
    ObjectInfo[objid][ObjModel] = objectid;
    ObjectInfo[objid][ObjPosX] = x;
    ObjectInfo[objid][ObjPosY] = y;
    ObjectInfo[objid][ObjPosZ] = z;
    ObjectInfo[objid][ObjRotRX] = rx;
    ObjectInfo[objid][ObjRotRY] = ry;
    ObjectInfo[objid][ObjRotRZ] = rz;
    ObjectInfo[objid][ObjDatum] = string;
    ObjectInfo[objid][ObjKeszitette] = pname(playerid);
        new file[32];
format(file,sizeof(file),\"/Objektek/%d.ini\",objid);
if(!fexist(file))
{
   dini_Create(file);
    dini_IntSet(file,\"ObjVan\",1);
        dini_IntSet(file,\"ObjModel\",objectid);
        dini_FloatSet(file,\"ObjPosX\",ObjectInfo[objid][ObjPosX]);
        dini_FloatSet(file,\"ObjPosY\",ObjectInfo[objid][ObjPosY]);
        dini_FloatSet(file,\"ObjPosZ\",ObjectInfo[objid][ObjPosZ]);
        dini_FloatSet(file,\"ObjRotRX\",ObjectInfo[objid][ObjRotRX]);
        dini_FloatSet(file,\"ObjRotRY\",ObjectInfo[objid][ObjRotRY]);
        dini_FloatSet(file,\"ObjRotRZ\",ObjectInfo[objid][ObjRotRZ]);
        dini_Set(file,\"ObjDatum\",ObjectInfo[objid][ObjDatum]);
        dini_Set(file,\"ObjKeszitette\",pname(playerid));
}
}
}
« Utoljára szerkesztve: 2016. február 27. - 19:47:46 írta Zippanto »

Nem elérhető rewan

  • 960
    • Profil megtekintése
Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #3 Dátum: 2016. február 28. - 11:47:30 »
0 Show voters
Amikor létrehozod az objectet, akkor jó object jelenik meg?
Ebben a scriptben ketten sem találtunk hibát(persze elnézhettük, de nem bonyolult a szerkezete).

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #4 Dátum: 2016. február 28. - 13:02:54 »
0 Show voters
Amikor lerakom akkor jó, de mikor resizem akkor már nem (a fájlba rossz id-t ment le)

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #5 Dátum: 2016. február 28. - 13:22:55 »
0 Show voters
Gondolom Streamert használsz, már a callbackból ítélve. Ahhoz meg tartozik egy ilyen függvény
 
native EditDynamicObject(playerid, objectid);

 
és ne az alap objectekhez való EditObject()-et használd.

Nem elérhető rewan

  • 960
    • Profil megtekintése
Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #6 Dátum: 2016. február 28. - 13:54:04 »
0 Show voters
Ebben az esetben nem futna le a callback és nem mentené le.
Illetve szerkeszteni se lehetne a nem létező alap objectet. :D

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #7 Dátum: 2016. február 28. - 16:07:54 »
0 Show voters
Hát hidd el, hogy régebben olyat csináltam, hogy dinamikus pickupot raktam le, és a dolgokat, amiket akartam, hogy csináljon, azt a sima pickupos callback alá tettem, meghívódott, de mindig csak egyetlen egy. Úgyhogy el tudom képzelni, meg a címbe is azt írta be, úgyhogy.. :D

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #8 Dátum: 2016. február 28. - 16:43:34 »
0 Show voters
CMD:obj(playerid,params[])
{
    if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][Admin] >= 4)
{
    new parameter[64];
            if(sscanf(params, \"s[64]{}\",parameter)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [tipus] [id] ))\"), SCM(playerid,WHITE,\"(( Típusok: uj, torol ))\");
            {
                if(egyezik(parameter,\"uj\"))
                {
          new obj,Float:x,Float:y,Float:z;
          GetPlayerPos(playerid,x,y,z);
          if(sscanf(params,\"{s[64]}d\",obj)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [uj] [objektid] ))\");
         {
             new objid = CreateDynamicObject(obj,x,y+5,z+1,0,0,0);
            EditDynamicObject(playerid,objid);
         }
      }
      else if(egyezik(parameter,\"torol\"))
                {
          new delid;
          if(sscanf(params,\"{s[64]}d\",delid)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [torol] [id] ))\");
         {
             new file[32];
            format(file,sizeof(file),\"/Objektek/%d.ini\",delid);
             if(fexist(file))
             {
                dini_Remove(file);
                SFM(playerid,GREEN,\"(( Töröltél egy objektet! [%d] ))\",delid);
                return 1;
            }
            if(!fexist(file))
            {
                SCM(playerid,ORANGE,\"(( Nincs ilyen objekt! ))\");
                return 1;
            }
         }
      }
   }
}
}
return 1;
}

Nem elérhető rewan

  • 960
    • Profil megtekintése
Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #9 Dátum: 2016. február 28. - 17:47:01 »
0 Show voters
if(sscanf(params,\"{s[64]}d\",obj)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [uj] [objektid] ))\");
if(sscanf(params,\"{s[64]}d\",delid)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [torol] [id] ))\");

 
Lekérsz egy stringet és egy integert, de csak egy integer változót adsz meg neki.

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #10 Dátum: 2016. február 28. - 17:51:01 »
0 Show voters
Mármint akkor mit írtam el?

Nem elérhető rewan

  • 960
    • Profil megtekintése
Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #11 Dátum: 2016. február 28. - 17:55:36 »
0 Show voters
Remélem jól veszem ki, de mivel már megvan a parameter string, szerintem nyugodtan törölheted
az {s[64]} részt a sscanf sorából.
 
if(sscanf(params,\"d\",obj)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [uj] [objektid] ))\");
if(sscanf(params,\"d\",delid)) return SCM(playerid,WHITE,\"(( Használat: /obj(ect) [torol] [id] ))\");

 
Javíts ki ha tévedek, de szerintem itt már semmilyen stringet nem akarsz lekérni.
*szerk*

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #12 Dátum: 2016. február 28. - 17:57:52 »
0 Show voters
így nem megy.

Nem elérhető rewan

  • 960
    • Profil megtekintése
Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #13 Dátum: 2016. február 28. - 18:00:23 »
0 Show voters
Mi a baj így? Csak mert szintaktikailag így helyes 1db integerrel.

Player eltüntetése és samp keys kérdés és EditObject funkció probléma
« Válasz #14 Dátum: 2016. február 28. - 18:08:06 »
0 Show voters
hiába írok be objekt id-t nem megy. kiadja a Használat: stb...

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal