Sziasztok!
Lenne egy parancsra nyíló sorompóm, aminek a sebességét nem tudom hogy kell állítani. (Sorompót nem igen csináltam még.) Azt észrevettem, hogy MoveObjectel és SetObjectRotal is lehet csinálni, de MoveObjectnél hiába vettem le a sebességet 2.0-ról 0.3-ra, ugyanúgy felröpült. (Azt hittem elszáll xD) Szóval sorompót hogy tudok úgy csinálni, hogy szép lassan nyíljon, csukódjon?
new sorompo;
sorompo = CreateObject(968, -2436.83, 495.46, 29.68, 356.86, 90.00, 25.00);
if(!strcmp(\"/rsz\", cmdtext, true) )
{
SetObjectRot(sorompo, 356.86, 90.00, 25.00);
return 1;
}
if(!strcmp(\"/rsny\", cmdtext, true) )
{
SetObjectRot(sorompo, 356.86, 0.00, 25.00);
return 1;
}
A kapuim mind normálisan mûködnek, de ez nem akar...
Köszi elõre is a segítséget!
Szia! Én a következõ képpen használom a sorompót:
Az én esetemben ugye több sorompóról van szó egyértelûen, ha neked csak egy kell akkor módosítsd értelem szerûen. :)
forward GateClose();
public GateClose()
{
SetObjectRot(kapu2,0.00000000,90.00000000,270.00000000); //itt pedig megadjuk a zárt állapotokat
SetObjectRot(kapu1,0.00000000,270.00000000,269.99993896); //szintén
SetObjectRot(pdkapu,0.00000000,270.00000000,270.00000000); //szintén
SetObjectRot(tuzkapu,0.00000000,90.00000000,270.00000000); //szintén
}
CMD:nyit(playerid,params[])
{
if (IsPlayerInRangeOfPoint(playerid,5,1065.4315,-1759.4772,13.4035)) //itt van a kapu helyzete és sugara a játékban
{
SetObjectRot(kapu2,0.00000000,10.00000000,270.00000000); // Megadjuk kapu2 rotációját (nyitott állapotban)
SetTimer(\"GateClose\", 6000, false); // Elindítja a GateClose timert
SendClientMessage(playerid, ZOLD,\"A sorompó kinyitva! Hamarosan bezárodik (6mp).\"); //kiíratjuk, hogy 6mp múlva záródik
}
else if(IsPlayerInRangeOfPoint(playerid,5,1064.5264,-1772.6526,13.3552)) //tuning mûhely kapu
{
SetObjectRot(kapu1,0,351,269.99); // Megadjuk kapu1 rotációját (nyitott állapotban)
SetTimer(\"GateClose\", 6000, false); // Elindítja a GateClose timert
SendClientMessage(playerid, ZOLD, \"A sorompó kinyitva! Hamarosan bezárodik (6mp).\"); //kiíratjuk, hogy 6mp múlva záródik
}
else if(IsPlayerInRangeOfPoint(playerid,7,1041.2240,-1460.6000,13.6400)) // tûzoltóság kapu
{
SetObjectRot(tuzkapu,0.00000000,0.00000000,270.00000000); // Megadjuk tuzkapu rotációját (nyitott állapotban)
SetTimer(\"GateClose\", 6000, false); // Elindítja a GateClose timert
SendClientMessage(playerid, ZOLD, \"A sorompó kinyitva! Hamarosan bezárodik (6mp).\"); //kiíratjuk, hogy 6mp múlva záródik
}
else //vagy...
{
SendClientMessage(playerid,PIROS,\"Nem állsz kapu közelében!\"); //küldük egy üzenetet a playernek, hogy nincs a megadott helyen
}
return 1;
}