Peršokti į turinį
  • ŽAIDIMAI
  • , ŽAIDIMAI
  • ŽAIDIMAI

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 1188 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

(redaguota)

Sveiki, susidūriau su problėma, nepavyksta judinti vartų pagal rotaciją per laika,
vartai juda ne pagal laiką, o iškarto nusistato jų nurodyta pozicija kur turi judėti, o man reikia kad per laiką.


Vartų sukūrimo kodas:

kurjeriuvartai = CreateObject(968, -2202.73706, -2263.10425, 30.51350,   0.00000, 90.00000, -39.96000);

Judinami vartai:

    if(newkeys == KEY_YES)
    {
   	if (IsPlayerInRangeOfPoint(playerid, 5.0, -2199.8862,-2265.9819,30.6250))
    {
    if(playerDB[playerid][specialybe] != 1) return 0;
    if(kurjeriuvartubusena == false)
    {
        kurjeriuvartubusena = true;
		MoveObject(kurjeriuvartai,-2202.73706, -2263.10425, 30.51350+0.00001, 5,  0.00000, 0.00000, -39.96000);
		new str[125 + 30];
		format(str, sizeof(str),"{0077b6}• {FFFFFF}Spauskite {0077b6}„Y“ {FFFFFF}jog uždaryti vartus!\n{0077b6}• {FFFFFF}Paskutinis vartus atidarė: {0077b6}%s.",GetPlayerNameEx(playerid));
		Update3DTextLabelText(kurjeriuvartaitxd, -1,str);
		GameTextForPlayer(playerid, "~G~Atidarote vartus!",3000,3);
    }
    else
    {
        kurjeriuvartubusena = false;
  		MoveObject(kurjeriuvartai,-2202.73706, -2263.10425, 30.5135-0.00001, 5,  0.00000, 90.00000, -39.96000);
  		new str[125 + 30];
		format(str, sizeof(str),"{0077b6}• {FFFFFF}Spauskite {0077b6}„Y“ {FFFFFF}jog atidaryti vartus!\n{0077b6}• {FFFFFF}Paskutinis vartus uždarė: {0077b6}%s.",GetPlayerNameEx(playerid));
		Update3DTextLabelText(kurjeriuvartaitxd, -1,str);
		GameTextForPlayer(playerid, "~R~Uzdarote vartus!",3000,3);
    }
    }
    }

+ Dar  vienas klausymas

Kaip išgauti ar kažkoks žaidėjas sėdi pas žaidėja mašinoje.
Pvz jeigu žaidėjui ir mašinoj kurioj jis sėdi nustatomas interjeras, kaip nustatyti interjerą žaidėjui kuris sėdi šalia pas žaidėja mašinoje?

 

Redaguota , nario BayonV
prieš 1 valandą, FreeTime parašė:

https://team.sa-mp.com/wiki/GetPlayerVehicleID.html

 

Skaitykis, imesk DC savo, dėl moveobject paiiškinsiu kaip veikia.

Man GetPlayerVehicleID funkcija nieko nesako, žinau kaip ji veikia, bet neįsivaizduoju kaip išgauti žaidėjo kuris sėdi šalia informacija.

Terebaitas#9573
 

33 minutes prieš, Andrius.025 parašė:

Patariu naudot tiesiog MoveObject(ObjektoID,  x, y, z, 0.009,  rotx, roty, rotz); // 0.009 letai atidaro tavo tipo vartus. Tu uždėjas 5 greiti jis per greitas todėl iškarto ir atsidaro.

Nepadėjo, vartai vistiek staigiai atsidaro/užsidaro be laiko..

prieš 2 valandas(-ų), BayonV parašė:

Man GetPlayerVehicleID funkcija nieko nesako, žinau kaip ji veikia, bet neįsivaizduoju kaip išgauti žaidėjo kuris sėdi šalia informacija.

Terebaitas#9573
 

Nepadėjo, vartai vistiek staigiai atsidaro/užsidaro be laiko..

Tai koki laiką uždėjęs esi? 

  • Neigiamai 1

AMD Ryzen™ 7 5800 X 3,8 GHz (Turbo 4,7 GHz), GeForce RTX™ 4060, 32 GB RAM, 1 TB SSD

RdkM1Vb.jpg.06d5270ecf8cbbb8afcab0ad355c92ec.jpg.78add6bd4c74d20c86742226a8b7d38a.jpg

 

 

  • Parašė po 2 savaičių...

https://imgur.com/JQRaG4Q

Viršuje, kad tikrai veikia.

viršuje:

#define HOLDING(%0) \
    ((newkeys & (%0)) == (%0))
#define PRESSED(%0) \
    (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define RELEASED(%0) \
    (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
    
new GateAllreadyRotated[MAX_OBJECTS];

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	if(PRESSED(KEY_YES))
    {
	   	if(IsPlayerInRangeOfPoint(playerid, 5.0, -2199.8862,-2265.9819,30.6250))
	    {
		    if(playerDB[playerid][specialybe] != 1) return 0;
		    if(kurjeriuvartubusena == false)
		    {
		        kurjeriuvartubusena = true;
				RotateObject(kurjeriuvartai,0.00000, 0.00000, -39.96000, 0.009);
				new str[125 + 30];
				format(str, sizeof(str),"{0077b6}• {FFFFFF}Spauskite {0077b6}„Y“ {FFFFFF}jog uždaryti vartus!\n{0077b6}• {FFFFFF}Paskutinis vartus atidarė: {0077b6}%s.",GetPlayerNameEx(playerid));
				Update3DTextLabelText(kurjeriuvartaitxd, -1,str);
				GameTextForPlayer(playerid, "~G~Atidarote vartus!",3000,3);
		    }
		    else
		    {
		        kurjeriuvartubusena = false;
		  		RotateObject(kurjeriuvartai,0.00000, 90.00000, -39.96000, 0.009);
		  		new str[125 + 30];
				format(str, sizeof(str),"{0077b6}• {FFFFFF}Spauskite {0077b6}„Y“ {FFFFFF}jog atidaryti vartus!\n{0077b6}• {FFFFFF}Paskutinis vartus uždarė: {0077b6}%s.",GetPlayerNameEx(playerid));
				Update3DTextLabelText(kurjeriuvartaitxd, -1,str);
				GameTextForPlayer(playerid, "~R~Uzdarote vartus!",3000,3);
		    }
	    }
    }
	return 1;
}
stock RotateObject(objectid, Float: RotX, Float: RotY, Float: RotZ, Float: RotSpeed)
{
    new Float: ObjectPos[3];

	GetObjectPos(objectid, ObjectPos[0], ObjectPos[1], ObjectPos[2]);

	if(GateAllreadyRotated[objectid] == 0)
	{
	    GateAllreadyRotated[objectid] = 1;

		return MoveObject(objectid, ObjectPos[0], ObjectPos[1], ObjectPos[2] + 0.015, RotSpeed, RotX, RotY, RotZ);
	}
	else
	{
	    GateAllreadyRotated[objectid] = 0;

	    return MoveObject(objectid, ObjectPos[0], ObjectPos[1], ObjectPos[2] - 0.015, RotSpeed, RotX, RotY, RotZ);
	}
}

 

 

  • Teigiamai 2

Nieko naujo.

2023-03-15 15:14, Andrius.025 parašė:

https://imgur.com/JQRaG4Q

Viršuje, kad tikrai veikia.

viršuje:

#define HOLDING(%0) \
    ((newkeys & (%0)) == (%0))
#define PRESSED(%0) \
    (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
#define RELEASED(%0) \
    (((newkeys & (%0)) != (%0)) && ((oldkeys & (%0)) == (%0)))
    
new GateAllreadyRotated[MAX_OBJECTS];

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
	if(PRESSED(KEY_YES))
    {
	   	if(IsPlayerInRangeOfPoint(playerid, 5.0, -2199.8862,-2265.9819,30.6250))
	    {
		    if(playerDB[playerid][specialybe] != 1) return 0;
		    if(kurjeriuvartubusena == false)
		    {
		        kurjeriuvartubusena = true;
				RotateObject(kurjeriuvartai,0.00000, 0.00000, -39.96000, 0.009);
				new str[125 + 30];
				format(str, sizeof(str),"{0077b6}• {FFFFFF}Spauskite {0077b6}„Y“ {FFFFFF}jog uždaryti vartus!\n{0077b6}• {FFFFFF}Paskutinis vartus atidarė: {0077b6}%s.",GetPlayerNameEx(playerid));
				Update3DTextLabelText(kurjeriuvartaitxd, -1,str);
				GameTextForPlayer(playerid, "~G~Atidarote vartus!",3000,3);
		    }
		    else
		    {
		        kurjeriuvartubusena = false;
		  		RotateObject(kurjeriuvartai,0.00000, 90.00000, -39.96000, 0.009);
		  		new str[125 + 30];
				format(str, sizeof(str),"{0077b6}• {FFFFFF}Spauskite {0077b6}„Y“ {FFFFFF}jog atidaryti vartus!\n{0077b6}• {FFFFFF}Paskutinis vartus uždarė: {0077b6}%s.",GetPlayerNameEx(playerid));
				Update3DTextLabelText(kurjeriuvartaitxd, -1,str);
				GameTextForPlayer(playerid, "~R~Uzdarote vartus!",3000,3);
		    }
	    }
    }
	return 1;
}
stock RotateObject(objectid, Float: RotX, Float: RotY, Float: RotZ, Float: RotSpeed)
{
    new Float: ObjectPos[3];

	GetObjectPos(objectid, ObjectPos[0], ObjectPos[1], ObjectPos[2]);

	if(GateAllreadyRotated[objectid] == 0)
	{
	    GateAllreadyRotated[objectid] = 1;

		return MoveObject(objectid, ObjectPos[0], ObjectPos[1], ObjectPos[2] + 0.015, RotSpeed, RotX, RotY, RotZ);
	}
	else
	{
	    GateAllreadyRotated[objectid] = 0;

	    return MoveObject(objectid, ObjectPos[0], ObjectPos[1], ObjectPos[2] - 0.015, RotSpeed, RotX, RotY, RotZ);
	}
}

 

 

Dėkui, padėjai. MLDC

  • -SanTa- užrakino šią temą

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 1188 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Svečias
Ši tema yra užrakinta.
  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...