Ich werde es dann mal ausprobieren. Deine Idee ist aber gut.
Aber das löst ja generell nicht, das der Interior & die Virtuelle Welt sich nicht mit verändern.
Beiträge von Kasakow
-
-
Servus, ich nage gerade an meiner Spectate Funktion. Ich möchte es so haben dass wenn der Spieler in ein Fahrzeug steigt, er auch wieder in die Third Person Kamera geht und das wenn er den Interior wechselt, das er den Spieler wieder richtig erfasst. Also wenn ich den Modus "SPECTATE_MODE_FIXED" nutze, funktioniert der Spectate schon mal gar nicht. Lass euch mal meinen Quellcode da.
/spec Befehl
ocmd:spec(playerid, params[])
{
if(pInfo[playerid][pAdmin] < 1)return 1;
if(pInfo[playerid][pSpec] == 1)return SendClientMessage(playerid, COLOR_RED, "FEHLER: {FFFFFF}Du schaust aktuell schon jemanden zu. /unspec um den Modus zu verlassen!");
new id, string[128];
if(sscanf(params, "u", id))return SendClientMessage(playerid, COLOR_GREY, "Befehl: /spec [Name/ID]");
if(IsPlayerLoggedIn(id) == false)return SendClientMessage(playerid, COLOR_RED, "LOGIN: {FFFFFF}Der Spieler muss angemeldet sein!");
format(string, sizeof string, "[ACHAT] %s beobachtet nun %s [ID:%i]", getPlayerName(playerid), getPlayerName(id), id),
SendAdminMessage(COLOR_YELLOW, string, -1);
new Float:myPos[3];
GetPlayerPos(playerid, myPos[0], myPos[1], myPos[2]),
pInfo[playerid][pSpec] = 1,
pInfo[playerid][pSpecID] = id,
pInfo[playerid][pGoBack][OldID] = playerid,
pInfo[playerid][pGoBack][OldPosX] = myPos[0],
pInfo[playerid][pGoBack][OldPosY] = myPos[1],
pInfo[playerid][pGoBack][OldPosZ] = myPos[2],
pInfo[playerid][pGoBack][OldInterior] = GetPlayerInterior(playerid),
pInfo[playerid][pGoBack][OldVirtualWorld] = GetPlayerVirtualWorld(playerid),
pInfo[playerid][pSpecTimer] = SetTimerEx("@specBoxUpdate", 650, true, "i", playerid), //In dem Timer lass ich dann auch den Interior & die VW World Updaten, falls sich was verändert hat.
SetPlayerInterior(playerid, GetPlayerInterior(id)),
SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(id)),
ShowPlayerMenu(playerid, MENU_SPEC),
TogglePlayerSpectating(playerid, true),
PlayerSpectatePlayer(playerid, id, SPECTATE_MODE_NORMAL);
return 1;
}Die State Change
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new mySpecID = GetMySpec(playerid), specVEH = GetPlayerVehicleID(playerid);
if(mySpecID != INVALID_PLAYER_ID)
{
if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{
return PlayerSpectateVehicle(mySpecID, specVEH, SPECTATE_MODE_NORMAL);
}
else if(oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
{
if(newstate == PLAYER_STATE_ONFOOT)
{
return PlayerSpectatePlayer(mySpecID, playerid, SPECTATE_MODE_NORMAL);
}
}
}
return 1;
} -
Jawoll, ich dank dir! Das mit dem GS Bug wusste ich bis jetzt noch gar nicht.
Könnte auch daran liegen dass jeder Server auf dem ich gespielt habe, den bereits gefixxt hatte. -
Habe es gestern mal kurz bei den kleinen Scripting Fragen angesprochen.
Meine Autos spawnen nicht da, wo sie sollen. Also ich kannte das von nähe Jefferson aber nicht von der Grove Street.
Da wo die GS ihren Basketballkorb hat, funktioniert das.
Ich meine, es gibt doch Skripts, wo das einwandfrei funktioniert.
Ich habe mal getestet, ob die Positionen falsch gespeichert wurden von mir.Dafür hab ich kurz einen Befehl geschrieben. (/tp [x] [y] [z] [r]) & siehe da.. ich spawne da wo die NRG zum Beispiel spawnen soll.
Da wo ich auf dem Screenshot stehe, sollte eine von den Nrg's stehen. Komischer Weiße, zeigt er mir in der Konsole auch an, dass nur 6 Fahrzeuge geladen wurden obwohl es mehr sind! -
Kann ich morgen mal ausprobieren.
Klingt aber für mich unverständlich da ich die Fahrzeuge via /save im SAMP Debug Modus gespeichert habe.
Eventuell liegt es daran? Wobei.. klingt für mich .. immer noch seltsam. Naja, werd es mal morgen, ausprobieren. -
Oh, das wusste ich noch gar nicht.
Die Angle, ist bei jedem Auto, gegeben.PWN - CODE
stock createFrakCars()
{
FrakCars[FRAK_GROVE][0] = AddStaticVehicleEx(411, 2471.7305, -1653.9286, 13.1295, 91.1799,234,234, 600); // gs_infernus_1
FrakCars[FRAK_GROVE][1] = AddStaticVehicleEx(411, 2481.5835, -1653.9379, 13.1157, 89.6524,234,234, 600); // gs_infernus_2
FrakCars[FRAK_GROVE][2] = AddStaticVehicleEx(560, 2499.8689, -1654.9833, 13.1318, 73.3367,234,234, 600); // gs_sultan_1
FrakCars[FRAK_GROVE][3] = AddStaticVehicleEx(560, 2510.4358, -1667.5021, 13.2139, 21.7674,234,234, 600); // gs_sultan_2
FrakCars[FRAK_GROVE][4] = AddStaticVehicleEx(560, 2507.5120, -1678.3459, 13.2111, 339.8317,234,234, 600); // gs_sultan_3
FrakCars[FRAK_GROVE][5] = AddStaticVehicleEx(522, 2493.8193, -1685.6548, 13.0816, 331.9830,234,234, 600); // gs_nrg_1
FrakCars[FRAK_GROVE][6] = AddStaticVehicleEx(522, 2492.7583, -1685.1547, 13.0816, 328.6006,234,234, 600); // gs_nrg_2
FrakCars[FRAK_GROVE][7] = AddStaticVehicleEx(522, 2491.5410, -1684.7617, 13.0328, 333.8896,234,234, 600); // gs_nrg_3
FrakCars[FRAK_GROVE][8] = AddStaticVehicleEx(522, 2490.1418, -1684.4767, 13.0153, 333.2024,234,234, 600); // gs_nrg_4
FrakCars[FRAK_GROVE][9] = AddStaticVehicleEx(541, 2476.0457, -1697.8132, 13.1443, 359.1874,234,234, 600); // gs_bullet_1
FrakCars[FRAK_GROVE][10] = AddStaticVehicleEx(541, 2472.0601, -1697.9293, 13.1414, 0.7579,234,234, 600); // gs_bullet_2
FrakCars[FRAK_GROVE][11] = AddStaticVehicleEx(451, 2482.9082, -1683.9436, 13.1213, 90.0109,234,234, 600); // gs_turismo_1
FrakCars[FRAK_GROVE][12] = AddStaticVehicleEx(482, 2469.0544, -1671.6486, 13.5166, 10.8241,234,234, 600); // gs_burrito_1
for(new i;i<20;i++){
if(FrakCars[FRAK_GROVE][i] == INVALID_VEHICLE_ID)continue;
SetVehicleVirtualWorld(FrakCars[FRAK_GROVE][i], 15);
}
return 1;
} -
Jemand eine Idee wieso die Autos so spawnen & was ich dagegen machen kann?
Screenshot ist unten beigelegt.
sa-mp-042.png -
Meine Frage ist, ob mein Code, das gleiche bewirkt, wie der unten drunter.
Sprich, kann ich eine while Schleife verwenden anstatt for zu benutzen, welche Vor & Nachteile bilden sich dann ?
while (i < GetMaxPlayers()){if(IsPlayerLoggedIn(i) == 0)continue;
if(pInfo[i][pFraktion] != pInfo[playerid][pFraktion])
continue;SendClientMessage(i, color, str);
}
for(new i;i<GetMaxPlayers();i++){
if(IsPlayerLoggedIn(i) == 0)continue;
if(pInfo[i][pFraktion] != pInfo[playerid][pFraktion])continue;
SendClientMessage(i, color, str);
} -

Hab es mir auch schon gedacht & jetzt umgesetzt.
-
Möglicherweise ein AV Programm das die Teamspeak Pakete sich von Zeit zu Zeit unter die Lupe nimmt ?
Es hat funktioniert. Ohne AV, geht es sau gut.
-
Man kann es einstellen wie man es mag denke ich. Nova z.B erlaubt über den AC Skin Mods, aber bei LSD Cont, Päckchen oder Perlen Mod kickt er dich raus.
-
Ja ich spiele auch auf Nova und nutze den Sbinder. Also ist ja jetzt mal totaler Unsinn.
-
Ich selber benutze schon seit vielen Jahren die Logitech G502 und das auch ohne Mousepad.
Es kommt nur drauf an aus was für einem Material der Schreibtisch bzw. die Oberfläche ist, allerdings gibt es mit den meisten Materialien keine Probleme und es ist eher die Ausnahme das die Maus da Probleme hat.Ja es ist meine Tischoberfläche. Hat jemand eine gute Sensfix?
-
Habe manchmal einen extremen High Ping im TS wenn ich SAMP Spiele, aber in SAMP geht dann trotzdem immer alles lagfrei..beim schnacken im Ts ist es immer lästig.. jemand eine Idee, wie ich das in den Griff kriege ?
-
Ich möchte den SAMP CAC von sampcac.xyz zur Pflicht machen auf meinen Gamemode.. jemand eine Idee?
-
Meine aktuelle Lage mit der 10 Euro Maus und noMousePad, machen mir das professionelle Deaglen kaum möglich..
Ich will mir demnächst deshalb eine neue Maus und ein neues Mauspad holen .. Empfehlungen.. extra fürs deaglen ? -
Bekomm beim compilen folgenden Error:
Wo ist denn i2 gegeben ?
-
Gestern angekommen. 120er SSD + Second HDD Caddy. Gleich verbaut.
-
Wenn dann, würde ich mir mal die günstige Variante von holen. Erreiche in Heidelberg eh nur 10-25 Mbits.
-
Warum sollte dein Akku davon kaputt gehen, deinen Hotspot laufen zu lassen?
Weil der Akku ständig unter Belastung ist.