Ok dann könntest du das so inetwa lösen:
format(Uberschrift,sizeof(Uberschrift),"Benutzer: %s",Spielername);
new len = strlen(Passwort);
strdel(Passwort,3,len);
for(new i = 3; i < len; i++)
Passwort[i] = '*';
Allerdings wird dann noch vorausgesetzt, dass das Passwort länger, als 3 Zeichen ist. Sonst steht es ganz aufgedeckt dar.
Das könnte man noch so umgehen:
format(Uberschrift,sizeof(Uberschrift),"Benutzer: %s",Spielername);
new len = strlen(Passwort);
strdel(Passwort,3,len);
for(new i = (len > 3) ? 3 : 0; i < len; i++)
Passwort[i] = '*';
Beiträge von RG_
-
-
Willst du also genau die Hälfte des Passwortes durch * ersetzen?
-
wenn ich mich nicht irre fehlen die klammern
{
TEXT
}
Richtig.Nochmal das Ganze umgesetzt:
public OnPlayerSpawn(playerid)
{ //-
if(GetFraktion(playerid) == 1)
{
GivePlayerWeapon(playerid, 3,1);
GivePlayerWeapon(playerid, 17,500);
GivePlayerWeapon(playerid, 25,500);
GivePlayerWeapon(playerid, 29,500);
GivePlayerWeapon(playerid, 31,500);
GivePlayerWeapon(playerid, 41,500);
SetPlayerSkin(playerid, 280);
SetPlayerPos(playerid, -341.4174,4054.3872,30.8625);
}
if(GetFraktion(playerid) == 2)
{
GivePlayerWeapon(playerid, 4,1);
GivePlayerWeapon(playerid, 22,500);
GivePlayerWeapon(playerid, 32,500);
SetPlayerSkin(playerid, 115);
SetPlayerPos(playerid, -342.2039,4055.0679,30.8625);
}
} -
Ich hab dir mal die Funktion umgebaut, sodass sie das macht:
stock LogEinsatz(stichwort[],beschreibung[])
{
new bool:found, u = sizeof LastEinsatz;
for(new i = 0; i < u; i++)
{
if(LastEinsatz[i][Inuse] == true) continue;
LastEinsatz[i][Einsatzid] = counteinsatz;
format(LastEinsatz[i][Stichwort],256,stichwort);
format(LastEinsatz[i][Beschreibung],1024,beschreibung);
LastEinsatz[i][Inuse] = true;
found = true;
return 1;
}
if(!found)
{
new a,i;
for(i = 0; i < u; i++)
{
a = i+1;
if(a >= u) break;
LastEinsatz[i][Einsatzid] = LastEinsatz[a][Einsatzid];
format(LastEinsatz[i][Stichwort],256,LastEinsatz[a][Stichwort]);
format(LastEinsatz[i][Beschreibung],1024,LastEinsatz[a][Beschreibung]);
}
LastEinsatz[i][Einsatzid] = counteinsatz;
format(LastEinsatz[i][Stichwort],256,stichwort);
format(LastEinsatz[i][Beschreibung],1024,beschreibung);
LastEinsatz[i][Inuse] = true;
}
return 1;
}
Es werden so alle Einträge zunächst von ID 0-20 eingetragen & dann wird Eintrag 20 auf 19 verschoben, 19 auf 18 verschoben usw... und der Neueste bei 20 geaddet. -
Du kannst das auch so machen:
format(Uberschrift,sizeof(Uberschrift),"Benutzer: %s",Spielername);
new len = strlen(Passwort);
strdel(Passwort,len-3,len);
strcat(Passwort,"***"); -
Ich fände auch noch so eine Markierung cool, wenn man etwa 3 Sekunden auf einem Teil des Codes bleibt, sodass er dir alle anderen Vorkommen markiert. (Insofern es das bei PAWNit noch nicht gibt ^^)
-
It (pTot[playerid] = 1
{
Was passiert wenn er gestorben ist nur der Spawn
}
Else
{
Dein normaler spawn
}
Noch ein paar Fehler ausgebessert:
if(pTot[playerid] == true)
{
Was passiert wenn er gestorben ist nur der Spawn
}
else
{
Dein normaler spawn
} -
Bei OnPlayerDeath setzt du eine Variable (pTod) auf true, mit der du abfragen kannst, ob der nächste Spawn des Spielers ein "Krankenhausspawn" ist. Wenn ja, setzt du seine Position dementsprechend dahin und stempelst ihn wieder als lebendig ab.
-
Du musst die Position bei OnPlayerSpawn setzen
Beispiel:
new bool:pTod[MAX_PLAYERS];
public OnPlayerDeath(playerid, killerid, reason)
{
pTod[playerid] = true; // Spieler tot?
SendClientMessage(playerid,COLOR_RED,"Dein Tod kostet dich 200$"); // Sende eine Nachricht( An Spieler, mit der Farbe Rot, "und dem Text");
SetPlayerHealth(playerid, 65.0);
GivePlayerMoney(playerid,-200); // Ziehe dem (Spieler, 200 $ ab
SetTimer("friedhof",1000*60*3,false);return 1;
}
public OnPlayerSpawn(playerid)
{
if(pTot[playerid] == true) // KH Spawn?
{
SetPlayerPos(playerid,814.9862,-1102.8774,25.7893); // Setz die Positon( Vom Spieler auf, x, y, z);}
pTod[playerid] = false; // Spieler wieder am leben=?
}
return 1;
}
public OnPlayerConnect(playerid)
{
pTod[playerid] = false; // Bug verhindern, wie z.B. Spieler geht zw OnPlayerDeath & OnPlayerSpawn offline -> Nächster Spieler mit dieser ID -> tot
return 1;
} -
So ein Video des funktionierenden Geräts ist nun im ersten Beitrag zu finden
Der Ton wurde durch mein HTC Nexus One etwas desynchronisiert.
/Edit: Gerät ist immernoch zu haben -
Ich hab mir letztens da BF3 Limited Edition für 13€ per PSC geholt. Ja es gab ein wenig Prozent Aufschlag, allerdings nicht schwerwiegend bei diesem kleinen Betrag.
PSC Code eingegeben -> 10min gewartet -> Key erhalten & bei Origin eingelöst.
Es gab keinerlei Probleme, kann ich nur empfehlen -
Das hatten wir doch schonmal
3. Wie gesagt, die Entscheidung über eine Beförderung oder Degradierung liegt ei der Administration. Es gibt genug Teammitglieder, die einigen Usern sehr oft geholfen haben - im Grunde fast alle. Wenn man aber alle befördern würde, könnte man einige Ränge gar abschaffen.
-
So das Vid ist aufgenommen und am Hochladen (dauert allerdings lange bei einem Upload von 10kb /s für 100 MB :D)
-
Jo kann ich, aber erst morgen. Wird dann so um 15 Uhr kommen
-
Du kannst sie ja für 165€ sofort kaufen
-
So hiermit biete ich meine Playstation 3 Slim mit 320 GB zum Verkauf an.
Das
Gerät ist 1 1/2 Jahre alt und hat noch Garantie bis zum August 2013
(Der Kassenbon kann derzeit leider nicht vorgelegt werden).
Ich habe
sie vor knapp 3 Monaten von einem Freund abgekauft, der nur selten damit
spielte, da er hauptsächlich am PC zockt. Danach wurde das Gerät von
mir noch häufig genutzt ( In etwa 100 Spielstunden binnen 3 Monate )
und
ich kann bestätigen, dass sie in einem gepflegten Zustand (leichte Kratzer, normale Gebrauchspuren) und 100%
funktionsfähig ist.Verkauft wird also:
- 1x PS3 Slim 320GB + Stromkabel
- 1x HDMI Kabel
- 1x Component Kabel + SCART Adapter
- 1x PS3 Controller schwarz
- 1x BFBC 1 Goldedition (Ab 16, Altersnachweis erforderlich?)
- (ggf. 1x BFBC2, allerdings ist dafür ein Altersnachweis von mind. 18 Jahren erforderlich)
Vor dem Verkauf wird das Gerät auf Werkszustand zurückgesetzt.Zahlungsmöglichkeiten sind ausschließlich Banküberweisung, oder PayPal
Preis:
- Sofortkauf 165€
- Bieten hier im ThreadZum Abschluss noc hein paar Bilder der Konsole:
/edit Video der Konsole:
Spoiler anzeigen Externer Inhalt www.youtube.comInhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.
______
Unverbindlicher Hinweis: Die Sicherheit einer Transaktion kann am besten durch die Einschaltung eines Mittelsmannes gewährleistet werden. Weitere Informationen dazu gibt es hier. -
Du gibst ja auch nur den Namen der Tanke weiter, nicht aber den String:
Create3DTextLabel(string, COLOR_RED, BTanke[idx][bPosX], BTanke[idx][bPosY], BTanke[idx][bPosZ], 20.0, 0, 0); -
Nachdem ich endlich mal meinen PC aufgerüstet hab is mein Desk auch endlich aufgeräumt
Natürlich mit dem schönsten Auto, das je gebaut wurde im Hintergrund ( BMW e34 ) -
Zitat
This code may even work in your testing, but it is wrong and your
testing is insufficient. Try crouching and pressing fire - your code
will instantly stop working. Why? Because "newkeys" is no longer the
same as "KEY_FIRE", it is the same as "KEY_FIRE" COMBINED WITH
"KEY_CROUCH".Aber nicht, wenn du versuchst mehrere Tasten gleichzeitig zu drücken...
-
if(newkeys == KEY_ANALOG_DOWN)
//....
else if(newkeys == KEY_ANALOG_DOWN)
Ersetze bitte noch die == durch &, und dann stimmt das
(Siehe hier)