Beitrag von Dr. Frauenarzt ()
Dieser Beitrag wurde vom Autor gelöscht ().
Hallo,
Habe eine kurze frage wie kann ich die Blick richtung abfragen?
Wollte abfragen lassen um den Automat zu bedienen muss er hinschauen das er den benutzen kann.
//E:
Ich habe mal eine frage...
PlayerInfo[playerid][pBusTime] = 10;
format(string, sizeof(string), "~w~%d~n~~b~Haltestelle", PlayerInfo[playerid][pBusTime]);
GameTextForPlayer(playerid, string, 1300, 6);
Er zählt alles runter von 10 bis 2 runter die 1 zeigt er mir nicht an nur Haltestelle.
Habe aktuell die includes von pawn aktualisiert.
Bin schon lange auf der Suche nach nem funktionierendem Mailer (include)
DIe die ich ausprobiert haben nicht funktioniert, sie waren auch teilweise 7 Jahre alt
Hat jemand vlt. ein aktuelles ?
Wie das gemacht werden kann, wird hier eigentlich ganz gut erklärt: http://forum.sa-mp.com/showthread.php?t=351065
Wie war die Syntax um einen definierten ZCMD Befehl auszuführen?
Ich glaub das ging so:
cmd_enter(playerid, params);
CMD:BEFEHL(playerid, params[])
CMD:2BEFEHL(playerid){return cmd_BEFEHL(playerid);}
//E:
CMD:unload(playerid, params[])
{
new vehicleid = GetPlayerVehicleID(playerid);
if(IsPlayerInRangeOfPoint(playerid, 5.0, 1563.4137,-1694.5535,5.8906))
{
if(GetVehicleModel(vehicleid) == 428)
{
new string[128], int;
new money = int*6;
if(sscanf(params, "i", int))return SendClientMessage(playerid, COLOR_GREY, "{247BA6}* Benutze {33AA33}/unload [Menge]");
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid, COLOR_GREY, "** Du befindest dich in keinem Lieferwagen.");
if(!(Spieler[playerid][pFraktion] == 1))return SendClientMessage(playerid, COLOR_GREY, "Du bist kein Polizist");
if(Frak[1][frakEisen] + int > 250000)return SendClientMessage(playerid, -1, "Das Lager ist bei diesem Int-Wert voll");
if(Vehicle[GetPlayerVehicleID(playerid)][vehProds] <= 0)return SendClientMessage(playerid, -1, "Keine Produkte");
Frak[1][frakEisen] += (int);
Vehicle[vehicleid][vehProds] -= int;
format(string, sizeof(string), "{B4B5B7}Verbrecher mit /arrest einsperren\n\n{21DD00}Waffenkammer (LSPD)\n%d/250000\nMaterialien", Frak[1][frakEisen]);
Update3DTextLabelText(lspd3d, COLOR_LSPDSTOR, string);
SendClientMessage(playerid, COLOR_WHITE,"{21DD00}Gehalt: 300000$");
format(string, sizeof(string), "{21DD00}Materialien: %d/50000", Vehicle[vehicleid][vehProds]);
SendClientMessage(playerid, COLOR_WHITE, string);
Spieler[playerid][pBank] += 300000;
format(string, sizeof(string), "* Staatskasse hat dir %d$ überwiesen. Betreff: Materialien abgeliefert (%d)", money, int);
SendClientMessage(playerid, COLOR_GREEN, string);
}
}
return 1;
}
Alles anzeigen
Habe mal eine kurze frage er zeigt mir immer an das die Staatskasse 0$ uberweisen hat?
Verstehe ich nicht ist dich richtig oder?
new string[128], int;
new money = int*6;
Das money da macht ja auch keinen Sinn, da int zu dem Zeitpunkt immer 0 ist.
Musst es weiter runter setzen, wenn du da was * 6 verrechnen willst..
Warum wird der Spieler nicht an die Pos gesetzt und warum ist die Camera nicht gesetzt?
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1412.0935,-1181.3557,187.2125);
SetPlayerCameraPos(playerid, 1415.3815,-1147.5815,131.6984);
SetPlayerCameraLookAt(playerid, 1415.7803,-807.8097,85.0581, CAMERA_CUT);
if(!sI[playerid][pLoggedIn])
{
new query[256];
mysql_format(handle, query, sizeof(query), "SELECT `ID` FROM `accounts` WHERE `Spielername`='%e'", sI[playerid][pName]);
mysql_pquery(handle, query, "OnUserCheck", "d", playerid);
}
return 1;
}
forward OnUserCheck(playerid);
public OnUserCheck(playerid)
{
new rows;
cache_get_row_count(rows);
if(rows == 0)
{
TogglePlayerSpectating(playerid, 1);
ClearPlayerChat(playerid, 20);
new info[512], caption[256];
format(caption, sizeof(caption), ""HTML_WEIS""HTML_NEONGRUN"Der Spielername %s ist noch nicht vergeben!", sI[playerid][pName]);
format(info, sizeof(info), ""HTML_WEIS"Willkommen "HTML_SERVER"%s"HTML_WEIS", \n\nUm auf dem Server spielen zu können brauchst du einen Spieleraccount. \nBitte klicke auf 'Weiter' um dir einen Account zu erstellen. \n"HTML_SERVER"* Das ganze Team wünscht dir viel Spaß auf dem Server. \n\n"HTML_ROT"* Mit der Registration stimmst du den Serverregeln überein!", sI[playerid][pName]);
ShowPlayerDialog(playerid, D_REG_WILLKOMMEN, DIALOG_STYLE_MSGBOX, caption, info, "Weiter", "Verlassen");
}
else
{
//Login
SendClientMessage(playerid, -1, "Login");
}
return 1;
}
Wenn ich das "TogglePlayerSpectating(playerid, 1);" wegmache funktioniert es
Vielen dank im vorraus
Gibt es eine Möglichkeit in Mysql ein Wert abzuziehen ?
Z.b
Ein User hat 5000$ und ich will ihn 1000$ abziehen kann ich das einfach so machen oder muss ich das auslesen, abziehen und neu Speichern ?
Ein User hat 5000$ und ich will ihn 1000$ abziehen kann ich das einfach so machen oder muss ich das auslesen, abziehen und neu Speichern ?
Hier ein Beispiel
enum e_Biz
{
bCreated,
bType,
Float:bEnterX,
Float:bEnterY,
Float:bEnterZ,
Float:bExitX,
Float:bExitY,
Float:bExitZ,
bInterior,
bLevel,
bPreis,
bBesitzer[MAX_PLAYER_NAME],
bTeilhaber[MAX_PLAYER_NAME],
bOwned,
bKasse,
bBeschreibung[64],
bPickup,
bLock,
Text3D:bText,
bdbID,
bEintritt,
bProdukte,
bMaxProdukte,
bProdPreis
}
new Biz[MAX_BIZ][e_Biz];
Alles anzeigen
Hey,
Ich habe eine frage wollte herraus finden wieviel Produkte die bizes Brauchen.
So werden die Produekte abgezeogen.
Biz[1][bProdukte] --;
Die Frage ist ich habe ingesamt 7 bizes und wollte dafür eine leichte abfrage machen und das in ein Dialog packen
//E:
Biz[1][bProdukte] --;
Wen jemand was käuft das die Produkte abgezogen werden
Erklärs bitte nochmal...
Ich habe im Script 7 Bizes.
Es gibt eine Fraktion die die Bizes beliefern kann.
Das ding ist das Sie nicht sinnlos hinfahren wollte ich wissen wie man es machen kann das der Fahrer per Dialog sehen kann wo wieviel Produkte an einem Biz benötigt werden.
Du iterierst durch Deine Unternehmen durch, und vergleichst einfach die, in denen bProdukte < bMaxProdukte ist.
Vermutlich so:
CMD:lieferung(playerid,params[])
{
new vehicleid = GetPlayerVehicleID(playerid);
if(GetVehicleModel(vehicleid) == 515 || GetVehicleModel(vehicleid) == 514)
{
if(GetVehicleModel(GetVehicleTrailer(vehicleid)) == 435)
{
#pragma unused params
new string[550], Produkte;
new bizID = cache_get_field_content_int(playerid, "id");
Produkte = Biz[bizID][bProdukte]-Biz[bizID][bMaxProdukte];
format(string,sizeof(string),"Ammunation LS\t\t\tBenötigt: %d Produkte\nBurgershot Hauptsitz\t\t\tBenötigt: %d Produkte\nClucking Bell Hauptsitz\t\t\tBenötigt: %d Produkte", Produkte, Produkte, Produkte);
ShowPlayerDialog(playerid,DIALOG_FIRMEN,DIALOG_STYLE_LIST,"Transport GmbH - Firmen Übersicht",string,"GPS","Schließen");
return 1;
}
}
return 1;
}
Alles anzeigen
Aber er zeigt ja immer 0 an bei allen... egal wo
//E:
Fehler korrigiert
Ich verstehe einiges nicht an deinem Code. Erstmal: Wo ist die Schleife von der ich gesprochen habe?
new bizID = cache_get_field_content_int(playerid, "id");
Verstehe ich nicht. cache_get_field_content_int kommt von dem MySQL Plugin. Wieso uebergibst Du da die playerid? Einen Cache hast Du auch nicht selektiert und einen SQL Query sehe ich auch nirgends.
Produkte = Biz[bizID][bMaxProdukte]-floatround(Biz[bizID][bProdukte]);
Wieso floatround wenn das doch sowieso ein Int ist?