Vielen Dank - Ich habe mich dieses mal bemüht ein gutes Tutorial auf die Beine zustellen
Beiträge von Kasakow
-
-
Soll ich dir gerade mal per Teamspeak & Teamviewer helfen ?
-
Vielleicht wurden sie ja wo anderes hin gestellt, sagen wir mal unter dem Boden.
Musst mal nachschauen. -
Guten Tag,
Mein Name lautet MrPawn,
Und zwar habe ich ein Gruppen System angefangen, und diese Funktioniert auch fast.
Nur klappt das Speicher des String, "Groupname" und das lesen vom string "Groupname" nicht ganz.Speicherung
format(var, 32, "Groupname=%s\n",PlayerInfo[playerid][pGroupname]);fwrite(hFile, var);Laden
if( strcmp( key , "Groupname" , true ) == 0 ) { val = ini_GetValue ( Data ); PlayerInfo[playerid][pGroupname] = strval ( val ); }Vielleicht muss ich ja den string erstmal auspacken . (strmid)
Ich weiß es nicht , und deswegen frage ich euch.
Das ganze soll gespeichert sowie geladen werden.Mit freundlichen Grüßen,
MrPawn
-
Day Array muss unter das enum:
new SpielerInfo[MAX_PLAYERS][PD];
enum PD
{
pEingeloggt,
pGeld,
pLevel,
pAdminlevel
};zu
enum PD
{
pEingeloggt,
pGeld,
pLevel,
pAdminlevel
};new SpielerInfo[MAX_PLAYERS][PD];
-
Könntest du mir eventuell ein Beispielcode dalassen, denn ich kann mich mit deinem Formulierung nicht ganz Identifizieren.
-
Aktuell habe ich es so:
ocmd:moneydrop(playerid)
{
new vehid, string[136];
if(PlayerInfo[playerid][pJob] != 22)return SendClientMessage(playerid, -1, "Du bist kein Geldlieferant.");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid, -1, "Du sitzt in keinem Fahrzeug.");
new carid = GetPlayerVehicleID(playerid);
if(!IsASecuricar(carid))return SendClientMessage(playerid, -1, "Du sitzt in keinem Geldtransporter.");
for ( new i; i < sizeof(Lieferantveh); i++)
{
if(carid != Lieferantveh[i])continue;
vehid = i;
}
if(MoneyLoad[vehid] == 0)return SendClientMessage(playerid, -1, "Der Geldtransporter ist nicht beladen.");
for(new i;i<sizeof(aInfo);i++){
if(!IsPlayerInRangeOfPoint(playerid, 3.0, aInfo[i][a_x], aInfo[i][a_y], aInfo[i][a_z]))continue;
if(aInfo[i][LoadValue] >= 15000)return SendClientMessage(playerid, -1, "Der Automat hat bereits, $15.000");
aInfo[i][LoadValue] += 100;
}
new rand = 300 + random(200);
GivePlayerMoney(playerid, rand), MoneyLoad[vehid] = 0;
format(string, sizeof(string), "ERFOLGREICH: {FFFFFF}Du hast den Geldtransporter erfolgreich entladen. Verdienst: $%i", rand);
return SendClientMessage(playerid, COLOR_GREEN, string);
}Und da besteht der Fehler auch wenn ich nicht in der Nähe eines ATM´s bin kann ich den Geldtransporter entladen.
enum ATMINFO {
Float:a_x, Float:a_y, Float:a_z,
LoadValue,
};new aInfo[][ATMINFO] = {
{1185.8193, -1046.6255, 31.9194, 0}
};Hiermal ein video zu:
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. -
Habe ich auch gerade gesehen, aber weist du ich habe das abladen System noch nicht ganz getestet.
Meine jetzige schleife:for(new i;i<sizeof(aInfo);i++){
if(!IsPlayerInRangeOfPoint(playerid, 3.0, aInfo[i][a_x], aInfo[i][a_y], aInfo[i][a_z]))continue;
aInfo[i][LoadValue] += 100;
if(aInfo[i][LoadValue] > 15000)return SendClientMessage(playerid, -1, "Der Automat hat bereits, $15.000");
} -
Guten Tag,
Mein Name lautet MrPawn.
Und zwar komme ich aktuell nicht weiter und habe eine Denkblockade.
Ich mache ein Geldlieferanten System.
Und zwar kann man schon jeden Geldtransporter beladen, nun bin ich beim entladen.
Und zwar soll der ATM dann 100$+ Bekommen.Angefangen habe ich so.
enum ATMINFO {
Float:a_x, Float:a_y, Float:a_z,
LoadValue, aid,
};new aInfo[][ATMINFO] = {
{1185.8193, -1046.6255, 31.9194, 0, 1}
};ocmd:moneydrop(playerid)
{
new tmp_id, string[136];
if(PlayerInfo[playerid][pJob] != 22)return SendClientMessage(playerid, -1, "Du bist kein Geldlieferant.");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid, -1, "Du sitzt in keinem Fahrzeug.");
new carid = GetPlayerVehicleID(playerid);
if(!IsASecuricar(carid))return SendClientMessage(playerid, -1, "Du sitzt in keinem Geldtransporter.");
for ( new i; i < sizeof(Lieferantveh); i++)
{
if(carid != Lieferantveh[i])continue;
tmp_id = i;
}
if(MoneyLoad[tmp_id] == 0)return SendClientMessage(playerid, -1, "Der Geldtransporter ist nicht beladen.");
MoneyLoad[tmp_id] = 0;
new rand = 300 + random(200);
GivePlayerMoney(playerid, rand);
for(new i;i<sizeof(aInfo);i++){
if(!IsPlayerInRangeOfPoint(playerid, 3.0, aInfo[i][a_x], aInfo[i][a_y], aInfo[i][a_z]))continue;
aInfo[][LoadValue] += 100;
}
if(aInfo[tmp_id][LoadValue] > 15000)return SendClientMessage(playerid, -1, "Der Automat hat bereits, $15.000");
aInfo[tmp_id][LoadValue] += 100;
format(string, sizeof(string), "ERFOLGREICH: {FFFFFF}Du hast den Geldtransporter erfolgreich entladen. Verdienst: $i", rand);
SendClientMessage(playerid, COLOR_GREEN, string);
return 1;
}Ich weis grad echt nicht mehr weiter
Mit freundlichen Grüßen,
MrPawn
-
Vielen Dank, für die Info.
Aber dennoch sollte es ein "Simples" Tutorial bleiben.
Trotzdem werde ich mich deiner Meinung anschließen, und es eventuell ausbauen -
OK. Wenn ich morgen mal Zeit finde, dann kann ich gerne ein Video produzieren.
Irgendwann werde ich sowie Zeit finden, da ich seit Freitag 2 Wochen Ferien habe. -
Ich habe true für den ignorecase angewendet.
if(ignorecase == true)Groß & Kleinschreibung wird ignoriert else Groß & Kleinschreibung wird beachtet
-
Versuch es mal mit einem Timer.
Dann musst du die Geschwindigkeit messen.
Dazu verwende mal die Funktion:
stock Float:getPlayerSpeed(playerid)
{
new Float:x, Float:y, Float:z, Float:rtn;
if(IsPlayerInAnyVehicle(playerid))GetVehicleVelocity(GetPlayerVehicleID(playerid), x, y, z);else GetPlayerVelocity(playerid, x, y, z);
rtn = floatsqroot(x*x + y*y + z*z);
return floatround(rtn * 100 * 1.61);
}Dann kannst du ja mit switch arbeiten.
switch(getPlayerSpeed)
{
case 10..20:SetVehicleVelocity(....); // Ist nur ein Beispiel
}Mit freundlichen Grüßen,
MrPawn
-
Warum machen es sich alle so schwer.
if(strcmp("/help",cmdtext,true,10) == 0)
zu
if(!strcmp(cmdtext, "/help", true))
-
Ich persönlich bin für eine Anleitung, denn bei einer Anleitung ist alles viel verständlicher und nachvollziehbar.
Meinst du nun wie es aktuell ist oder +Video anleitung ?Ich muss das Zeug halt auch Produzieren. Dadurch geht Zeit verloren.
Aber wenn die Leute dadurch besser lernen, nehme ich diese Zeit gerne in Anspruch. -
Guten Tag,
Ich bräuchte mal eure Hilfe.
Und zwar habe ich ein KofferSystem angefangen.Es gibt /buy [14] (Kofferid) /pickupkoffer, /dropkoffer
Der fehler liegt bei /dropkoffer (Beim Timer)
ocmd:dropkoffer(playerid)
{
if(KofferInfo[playerid][pKoffer] == 0)return SendClientMessage(playerid, -1, "Du hast keinen Koffer.");
if(KofferInfo[playerid][pPickup] == false)return SendClientMessage(playerid, -1, "Du hast keinen Koffer in der Hand.");
for(new i;i<2;i++) OnPlayerCommandText(playerid, "/bomb");
SetTimerEx("DropKoffer", 2500, false, "i", playerid);
return 1;
}public DropKoffer(playerid)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
KofferInfo[playerid][pPickup] = false;
RemovePlayerAttachedObject(playerid, 0),KofferInfo[playerid][pObject] = 0;
KofferInfo[playerid][pObject] = CreateObject(1210, x, y, z, 0.0, 0.0, 0.0);
SetObjectPos(KofferInfo[playerid][pObject], x, y, z-0.1);
SendClientMessage(playerid, -1, "Du hast den Koffer ablegegt.");
return 1;
}Der Koffer soll direkt auf dem Boden liegen. Damals hatte ich so ein Koffersystem hinbekommen.
Würde mich über eine positive Antwort freuen.
Mit freundlichen Grüßen,
MrPawn
-
Kannst du auch bald ein Video dazu machen ?
Gefällt mir aberMöchtest du denn das ich dazu ein Anleitungs Video mache ?
Danke -
Ja klar, aber es sind ja auch nur freierfundene zahlen. Und das ist nur eine Simple Anleitung
-
Vielen Dank - Falls fragen aufkommen, ich beantworte sie
-
Erstmal danke für die ganzen Anworten,
@Paradoxon
Hast natürlich recht, war nur Rellativ spät und ich war müde.
Und danke