Danke dir hat geholfen
Beiträge von Aleks
-
-
Moin. Ich bin gerade dabei, mein GUI Banksystem zu scripten. Ein-/Auszahlen geht bereits. Nur möchte ich, dass man ebenfalls überweisen kann.
Ich hab mir da bereits eine Lösung ausgedacht, die jedoch sehr umständlich wäre und die ich nur verwenden werde, wenn das gleich Gefragte nicht möglich ist.Ich habe folgendes vor:
Der Nutzer schreibt folgendes in den Input-Dialog: [EmpfängerID],[Betrag]
Dann wandel ich den Inputtext so um, dass er als Zahl gehandhabt wird mit:
new Betrag = strval(inputtext);Frage: Kann ich den Input aufteilen, sodass er die ID herausfindet, sprich die Zahlen BIS zum Komma nimmt, und im nächsten Schritt den Betrag, sprich die Zahlen NACH dem Komma nimmt?
Ich hab mit der SuFu nichts gefunden, sollte es aber trotzdem schonmal gelöst worden sein, bitte melden
MfG
Aleks -
Ich stand vor einiger Zeit vor dem gleichen Problem und hab mich für den PC entschieden.
Aus einfachen Gründen:- Für gleiches Geld viel mehr Leistung
- Man kann immer wieder aufrüstenSelbst Argumente wie:
- PC ist lauter als ein Laptop oder
- schlechter zu transportierenmüssen nicht zutreffen. Wenn man beim PC drauf achtet, dass eine gute Kühlung drin ist, ist die auch bei voller Belastung dementsprechen flüsterleise
(Bei mir zumindest, und war nicht teuer). Mal abgesehen davon merkt man das nach einer Weile zocken garnicht mehr. Laptops hingegen drehen zeitweise richtig auf und werden lautstark,
da bei denen durch wenig Platz viel mehr Abwärme produziert wird.
Ich gehe öfters auf Lans und muss sagen, dass mich das Transportieren bisher nie gestört hat.
Der Vorteil daran ist halt, dass man immer aktuelle Spiele mit seinen Kumpels spielen kann, was sich bei Laptops schwieriger gestaltet da da Aufrüstung schwerer ist.Ich meine sogar, dass sich der Grafikchip nicht austauschen lässt -> Wenn's nicht stimmt, bitte beschweren
MfG
Aleks -
Jo thx, an Anims hatte ich garnicht gedacht.
-
Hi,
ich habe da mal ne Frage. Und zwar wollte ich für mein RL-Gamemode das ich gerade schreibe, ein spezielles Todessystem machen. Und zwar, sollte ein anderer Spieler umgebracht werden, will ich dass er liegen bleibt bis die Polizei den Mord anhand von abgeworfenen Items (Anzeige der DNA des Täters, bzw. Fingerabdrücke) aufklärt.
Leider spawnt man direkt nach dem Tod.
Lässt sich das umgehen? -
Hrhrhr hab nach sowas gesucht aber das kam nie -.-
Naja, danke dir -
Hi,
wie man Cars dem Namen eines Spielers zuweist ist klar, hab ich ja auch schon in der SuFu gefunden.
Allerdings arbeite ich gerade an einem CarSystem. Der Spieler steigt in eines der beiden "Vorstellungsautos" ein, kauft es und es spawnt am Ausgabepunkt.
Wie mache ich es, dass dieses Auto nur von dem Käufer gefahren werden kann?MfG und danke schonmal,
Aleks
-
War jetzt 4 Tage krank und bemerke dass immer noch niemand geantwortet hat oO
Hat keiner irgend eine Antwort? -
Hi, ich hoffe ihr könnt mir helfen.
Und zwar bin ich grade dabei ein einfaches Car System aufzubauen, andere Dinge wie Tuning Teile usw. werde ich dann irgendwann später ergänzen. Aber jetzt gehts mir nur darum, dass das Grundgerüst funktionert, was es bis auf eine Kleinigkeit auch tut.Wenn man in ein Auto steigt, dann bekommt man einen Dialog angezeigt: "Willst du dieses Auto für XX SA$ kaufen?" [Ja][Nein]
Das funktioniert bis dahin, das Geld wird abgezogen, aufs Biz eigezahlt und das Auto spawnt am Ausgabeplatz.
So da das Auto ja nicht für jeden zugänglich sein soll, hab ich gedacht, dass ich die Autos mit einer Vehicleid über 700 spawnen lasse, und die Vehicleid dann im Accountfile eingetragen wird. Das funktioniert auch, bei mir ist 701 eingetragen. Das wiederum speichert er gleichzeitig in einer anderen Datei, auf deren Inhalt dann aufgebaut wird damit nach und nach 702,703,704...usw. zugewisen wird.
Aber dem Auto wird die ID 701 nicht zugewiesen sondern letztenendlich 39. Das ist das Problem. Und weil OnPlayerStateChange auf ID's über 700 greifen soll und prüfen soll ob das Auto jmd. speziellen gehört (Alle IDs über 700), greift das System dort nicht und lässt wildfremde Leute mit dem Auto fahren.Jetzt mal meine Frage: Worin liegt mein Fehler im Code?
-> Und vlt. als kleiner Zusatz: Wie wäre es besser Autos den Spielern zuzuweisen?Aber hier mal der Code:
if(vehicle == AHSF1)
{
new Model = GetVehicleModel(vehicle);
new Account[256];
GetPlayerName(playerid, playrname, sizeof(playrname));
format(Account, sizeof(Account), "Accounts/%s.ini", playrname);
new CarIDsd = dini_Int("CarID.ini", "ID");
new CarID = CarIDsd + 1;
dini_IntSet(Account, "CarOwner", 1);
dini_IntSet(Account, "CarModel", Model);
dini_IntSet(Account, "CarID", CarID);
dini_IntSet("CarID.ini", "ID", CarID);
SendClientMessage(playerid, COLOR_BLUE, "-> Glückwunsch, du hast dieses Auto gekauft!");
GivePlayerMoney(playerid, -Price1);
new SD = dini_Int("Biz/6.ini", "Kasse");
dini_IntSet("Biz/6.ini", "Kasse", SD+Price1);CarID = CreateVehicle(Model,-1984.1594,302.8695,35.0092,88.3266, 0, 0, 800);
// CarID zum test anzeigen lassen
new msg[256];
format(msg, sizeof(msg), "CarID: %d", CarID);
SendClientMessage(playerid, COLOR_LIGHTRED, msg);
// ==============
TogglePlayerControllable(playerid, true);
RemovePlayerFromVehicle(playerid);
}Wär schön wenn ihr mir helfen könntet...
mfg
Aleks -
Hi,
füg das mal unten in dein Script ein, unter die publics:
stock ini_GetKey( line[] )
{
new keyRes[128];
keyRes[0] = 0;
if ( strfind( line , "=" , true ) == -1 ) return keyRes;
strmid( keyRes , line , 0 , strfind( line , "=" , true ) , sizeof( keyRes) );
return keyRes;
}stock ini_GetValue( line[] )
{
new valRes[128];
valRes[0]=0;
if ( strfind( line , "=" , true ) == -1 ) return valRes;
strmid( valRes , line , strfind( line , "=" , true )+1 , strlen( line ) , sizeof( valRes ) );
return valRes;
}strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
index++;
}new offset = index;
new result[20];
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
result[index - offset] = string[index];
index++;
}
result[index - offset] = EOS;
return result;
}Müsste funktionieren.
Mfg
Aleks -
Danke
Hat mir geholfen. Jetzt funzt die Telemaut endlich. -
Hier:
SetTimer("Maut", 10,1);
-
Der Timer befindet sich in OnGameModeInit()
Hatte den Timer auch schon bei OnPlayerSpawn...hat nichts geändert. -
sry dass ich den Thread nochmal ausgrabe. Hab aber ein ähnliches Problem wie mein Vorredner.
Ich hab eine Telemaut (Automatisch Geld abziehende Maut) mithilfe eines Timers und PlayerToPoint gemacht. Nur leider Funktioniert die Maut nur mit ID0.
Woran liegt das?public Maut(playerid)
{
new stringziel[256];
new playrname[MAX_PLAYER_NAME];if(PlayerToPoint(5.0, playerid, 144.2668,-1374.6394,49.6506) || PlayerToPoint(5.0, playerid, 1181.9232,-677.2064,62.3592))
{
GetPlayerName(playerid, playrname, sizeof(playrname));
format(stringziel, sizeof(stringziel), "%s Setting.ini", playrname);
new number = dini_Int(stringziel, "Maut");
if(number == 1)
{
}
else if(number == 0)
{
SendClientMessage(playerid, COLOR_GREY, "TELEMAUT: Du hast die Mautstation passiert. Kosten: 25$ . Bitte fahre weiter zur Entwerungsstation!");
GivePlayerMoney(playerid, -25);
new schondrin = dini_Int("Maut.ini", "Kasse");
dini_IntSet("Maut.ini", "Kasse", schondrin+25);
dini_IntSet(stringziel, "Maut", 1);
}
}
return 1;
} -
Oh sry, hab den Fehler gerade durch Zufall behoben... . Ist erledigt
-
Hi Community
bin gerade am erstellen eines RealLife Scriptes und bin nun auf einen Makeleader Befehl hier im Forum gestoßen.
Hab es ein wenig geändert, nun speichert er das Team und ob man Leader ist in eine Datei.
Allerdings bekomme ich immer einen Fehler:Scriptausschnitt:
if(!strcmp(strget(cmdtext,0),"/makeleader"))
{
new teamid = strval(strget(cmdtext,2));
{
if(IsPlayerAdmin(playerid))
{
gLeader[ziel] = teamid;
new stringziel[256];
GetPlayerName(playerid, playrname, sizeof(playrname));
format(stringziel, sizeof(stringziel), "%s Setting.ini", playrname);
if(teamid==1) { SetPlayerSkin(ziel,282);}
{
dini_IntSet(stringziel, "Fraktion", 1);
dini_IntSet(stringziel, "Leader", 1);
}
else
{
if(teamid==2) { SetPlayerSkin(ziel,163);}
{
dini_IntSet(stringziel, "Fraktion", 2);
dini_IntSet(stringziel, "Leader", 1);
}
SendClientMessage(ziel,COLOR_GREEN,"Du wurdest zum Leader einer Fraktion ernannt!");
}
}
}
return 1;
}Fehler:
C:\Users\Aleks\Desktop\AC-RealLife v1_0\gamemodes\AC-ReaLLife.pwn(515) : error 029: invalid expression, assumed zero
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase1 Error.
In diesem Fall stimmt die Zeilenzahl nicht. Er streicht mir das "else" als Fehler an. Wieso? Ich hab schon alles versucht aber es einfach nicht hingekrigt. Würde da kein Else stehen, würde er ja über z.B "Fraktion" = 1, "Fraktion" = 2 drüber schreiben.
Ich hoffe ihr könnt mir helfen,
mfG Aleks