forward DeinPublic (playerid);
Public DeinPublic (playerid)
forward DeinPublic (playerid);
Public DeinPublic (playerid)
Ok, fangen wir mal an
Also:
Du hast eine Position, am Automaten etc. dann machst du einen Befehl:
if(strcmp(cmdtext,"/ticket",true)==0)
{
if(!IsPlayerInRangeOfPoint(playerid,7,Deine Koordinaten))return SendClientMessage(playerid,ROT, "Du bist an keinem Ticketschalter!"); //wenn er nicht am Ticketschalter ist 7= maximale Entfernung zum Automaten
Attach3DTextLabelToVehicle(TextID,vehicleid, 0.0, 0.0, 2.0);
TextID = Create3DTextLabel( "Ticket gekauft", 0xFF0000AA, 0.0, 0.0, 0.0, 50.0, 0, 1 ); // TextID oben im Script noch definieren.
SendClientMessage(playerid,DeineFarbe,"Du hast dir erfolgreich ein Ticket gekauft.");
}
Jetzt gibt es mehre Möglichkeiten das Label wieder zu entfernen, entweder du stellst einen Timer das man nur eine bestimmte Zeit parken kann, oder du zäunst den ganzen Parkplatz ein und wenn man raus fährt halt per MoveObject wenn er z.B. in einen Checkpoint fährt das dass Label dann wieder weg gemacht wird.
//Alles im Forum geschrieben, keine Garantie ob es funktioniert ;D
//edit code eingerückt
Hallo,
Ich habe versucht das man am Haus spawnt, es geht aber leider nicht, man landet immer an diesem Bauernhof, also am Map Mittelpunkt, weiß aber nicht warum
Spawn:
for(new hausid; hausid<200; hausid++)
SetPlayerPos(playerid,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z]);
Stock:
stock LoadHaus(hausid)
{
new pfad[50];
format(pfad,50,"/haus/%d.txt",hausid);
if(!fexist(pfad))return 0; //überprüft ob die Datei existiert, wenn nicht wird 0 zurückgegeben
HausInfo[hausid][haus_x] = dini_Float(pfad,"x"); // hier laden wir die Werte
HausInfo[hausid][haus_y] = dini_Float(pfad,"y");
HausInfo[hausid][haus_z] = dini_Float(pfad,"z");
HausInfo[hausid][haus_preis] = dini_Int(pfad,"preis");
HausInfo[hausid][haus_innenraum] = dini_Int(pfad,"innenraum");
format(HausInfo[hausid][haus_besitzer],32,"%s",dini_Get(pfad,"besitzer"));
HausInfo[hausid][haus_pickup] = CreatePickup(1273 ,23,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],0); //erstellt ein Pickup an den Hauskoordinaten
new s[128]; //Hier erstellen wir einen neuen String, diesen formatieren wir mit den nötigen Infos:
format(s,128,"{E01B1B}****Haus****\n{FA7D00}Besitzer: %s\n{0AFA2A}Kaufpreis: %d$",HausInfo[hausid][haus_besitzer],HausInfo[hausid][haus_preis]); //dürfte wohl klar sein
HausInfo[hausid][haus_label] = Create3DTextLabel(s,0xFF00FF,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z],20,0,1); //Hier erstellen wir das Label. Die ID wird in HausInfo[hausid][haus_label] gespeichert (das ist wichtig für uns, da wir das Label später wieder löschen wollen!)
return print("Das Haus wurde erfolgreich geladen");
}
1 Cent geht glaub ich nicht mal da Paypal bei jeder Überweisung gebühren abzieht..
Danke, funktioniert
Hallo, ich habe dieses Autohaus System: [ SCRIPTING ] Autohaus + Autokauf System
und habe den Preis in Score umgeschrieben und die Abfrage so gemacht:
if(GetPlayerScore(playerid) < Buycars[i][CarScore])
Aber es funktioniert ingame nicht, auch wenn man Score 0 hat kann man ein Car kaufen obwohl es ab Score 900 eingestellt ist.
Achso,
Ok, ich danke dir, funktioniert perfekt
for(new hausid; hausid<MAX_HOUSES; hausid++)
wie meinst du das mit MAX_HOUSES eine Variable einsetzen ? bzw. was soll ich da einsetzt =?
Hallo,
Ich bin gerade dabei das man am Haus spawnt wenn man sich einloggt, allerdings bekomme ich Erros..
SetPlayerPos(playerid,HausInfo[hausid][haus_x],HausInfo[hausid][haus_y],HausInfo[hausid][haus_z]); //Die Zeile unter OnPlayerSpawn
der Error:
C:\Users\Beny\Desktop\FUN.pwn(6490) : error 017: undefined symbol "hausid"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
Was mich nur wundert ist, das im ganzen Script nicht Hausid definiert ist, aber es trotztem in anderen Zeilen funktionier, z.B.
stock LoadHaus(hausid)
{
new pfad[50];
format(pfad,50,"/haus/%d.txt",hausid);
if(!fexist(pfad))return 0; //überprüft ob die Datei existiert, wenn nicht wird 0 zurückgegeben
HausInfo[hausid][haus_x] = dini_Float(pfad,"x"); // hier laden wir die Werte
HausInfo[hausid][haus_y] = dini_Float(pfad,"y");
HausInfo[hausid][haus_z] = dini_Float(pfad,"z");
u.s.w..
Und wie würde das Scriptmäsig aussehen ? kann mir jemand ein Beispiel geben ?
Ne, das ist alles an Code, also wenn es ihm nicht gehört soll er nur rausgeworfen werden, aber nicht aus jedem Car was ingame steht, sondern halt nur bei den Kaufbaren.
Und es gibt auch nur ein Fahrzeug zu kaufen, also dürfte es etwas einfacher sein
Aber ich glaube ich werde mich schwer tun deine Erklärung in die Praxis umzusetzen
Trotztem Danke für die Hilfe
Hallo, ich habe dieses Autohaus System: [ SCRIPTING ] Autohaus + Autokauf System
Nun wollte ich es unter OnPlayerStateChange so machen das man aus dem Car geworfen wird wenn man nicht der Besitzer ist, allerdings fliegt man aus jedem Car und kann nur sein eigenes Fahren, also man kann auch nicht die Cars fahren z.B. für Fraktionen etc. man wird immer rauf geworfen
if(newstate==PLAYER_STATE_DRIVER)
{
for(new i = 0; i < 1; i++)
if(GetPlayerVehicleID(playerid) != Spielercar[playerid][i]) return RemovePlayerFromVehicle(playerid);
return 1;
}
Wie mache ich das dass man nur aus dem Car geworfen wird wenn es einem nicht gehört?
Sieht wiedermal sehr gut aus, nur was irgendwie nicht wirklich dazupasst sind die Orange/weißen Zäune..
9/10
SetPVarInt(killerid,"Bank",GetPlayerInt(killerid,"Bank")+playercash));
C:\Users\Beny\Desktop\FUN.pwn(6639) : error 017: undefined symbol "GetPlayerInt"
C:\Users\Beny\Desktop\FUN.pwn(6639) : error 029: invalid expression, assumed zero
C:\Users\Beny\Desktop\FUN.pwn(6639) : warning 215: expression has no effect
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
2 Errors.
Die anderen funktionieren ganicht
Hallo,
Ich möchte wenn jemand gekillt wird, das der Betrag der playerid, also das was er auf der Hand hat, direkt auf das Konto der Killerid gehen, aber ich bekomme Errors, weiß aber nicht wieso..
if(killerid == INVALID_PLAYER_ID)
{
ResetPlayerMoney(playerid);
}
else
{
playercash = GetPlayerMoney(playerid);
if(playercash > 0)
{
GetPVarInt(killerid, "Bank") +playercash); //Hier sind die Errors
ResetPlayerMoney(playerid);
}
}
Bank Befehl /Einzahlen:
ocmd:einzahlen(playerid,params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,-28.2220,-89.2535,1003.5469))return SendClientMessage(playerid,ROT, "Du musst im 24/7 in der nähe vom BSN sein!");
new betrag,string[128];
if(sscanf(params,"d",betrag)) return SendClientMessage(playerid,COLOR_ORANGE,"Benutze: /Einzahlen [Betrag]");
if(GetPlayerMoney(playerid) < betrag) return SendClientMessage(playerid,rot,"Du hast nicht soviel Geld auf der Hand!");
SetPVarInt(playerid, "Bank", GetPVarInt(playerid, "Bank") +betrag);
GivePlayerMoney(playerid, -betrag);
format(string, 128, "Du hast %i$ eingezahlt!", betrag);
SendClientMessage(playerid,COLOR_GREEN,string);
SpielerSpeichern(playerid);
return 1;
}
Und Die Errors:
C:\Users\Beny\Desktop\FUN.pwn(6639) : warning 215: expression has no effect
C:\Users\Beny\Desktop\FUN.pwn(6639) : error 001: expected token: ";", but found ")"
C:\Users\Beny\Desktop\FUN.pwn(6639) : error 029: invalid expression, assumed zero
C:\Users\Beny\Desktop\FUN.pwn(6639) : warning 215: expression has no effect
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
2 Errors.
habe aber leider nur Dini, und umstellen wäre jetzt zu kompliziert das das Script schon fertig ist..
Hallo,
Ich möchte gerne für meinen Server ein Top 5: Textdraw machen, ich weiß das ich eine Schleife für alle Spieler durchgehen muss und dann GetPlayerScore, allerdings weiß ich nicht wie ich den HÖCHSTEN WERT auslesen kann undzwar aus einer Dini Datei, also das man alle Spieler durchgeht auch wenn sie gerade nicht online sind..
Ich hoffe jemand kann mit weiter helfen.
Mfg: PrinceOfBelvedair
Alles klar. Dann freu ich mich drauf. Hoffe das mit dem Server geht jetzt auch klar.
Zum Notfall kann ich auch meinen 500 Slot Server zur Verfügung stellen, hab 2
Ich bin auf jedenfall dabei das Drehbuch ist auch gut,