Beiträge von maddin
-
-
Julian zwingt mich was dazu zu schreiben, also:
MIt der Trigger Include kann man kleine "Events" erstellen, die ausgelöst werden wenn ein Spieler in einem bestimmten Radius um das Erstellte event herum ist.
Also praktisch so ähnlich wie Pickup + OnplayerPickupPickup, nur mit dem unterschied das man kein Pickup setzen muss, und man nicht genau an dem Punkt sein muss sondern nur in einem Bestimmten Radius den man beim erstellen angibt.Funktionen:
CreateTrigger(Float:PositionX, Float:PositionY, Float:PositionZ, Float:Range, playerid = INVALID_PLAYER_ID, vehicleid = INVALID_VEHICLE_ID, VirtualWorld = -1, Interior = -1)
Erstelt ein Event.
Parameter:
PositionX, PositionY, PositionZ = Die Position an der Das Event platziert wird.
Range = Der Radius um den angegebenen Punkt herum, in dem sich der Spieler befinden muss um das Event auszulösen.
Optional:
playerid = die ID des Spielers der das Event auslösen kann. INVALID_PLAYER_ID Bedeutet das Event wird von jedem Spieler ausgelöst.
vehicleid = die Fahrzeug ID des Spielers von der das Event ausgelöst wird, INVALID_VEHICLE_ID beduetet das Event wird ausgelöst egal in welchem Fahrzeug der Spieler sitzt.
VirtualWorld = Die Virtuelle Welt in der der Spieler sein muss um das event auszulösen. Wenn man -1 angibt, wird das event in jeder Virtuellen Welt ausgelöst.
Interior = Das Interior in dem der Spieler sein muss um das Event auszulösen. Wenn man -1 angibt wird das Event in jedem Interior ausgelöst.
Rückgabe:
CreateTrigger gibt die triggerID des Events zurück.ToggleTrigger(triggerID, bool:toggle)
De-/Aktiviert ein Event.
Parameter
triggerID = die ID des Events das De-/activiert werden soll.
toggle = Ob das Event aktiviert (true) oder Deaktiviert(false) werden soll.DestroyTrigger(triggerID)
Zerstört ein Event.
Parameter
triggerID = die ID des Events das zerstört werden soll.Callback:
OnPlayerHandleTrigger(playerid, triggerID)
Wird aufgerufen wenn ein Event ausgelöst wird.
Parameter:
player = die ID des Spielers der das Event ausgelöst hat.
triggerID = die ID des Events das ausgelöst wurde.Wenn ihr foreach verwendet, inkludiert foreach vor der Trigger Include damit Trigger Include darauf zugreifen kann.
MAX_TRIGGER gibt die Maximale anzahl an Events an die erstellt werden können. Wenn ihr mehr als 20 Braucht, schreibt
#define MAX_TRIGGER XXXX // XXX = die Anzahl eurer Events
in euer script bevor ihr Trigger inkludiert.
Wem der Timer zu schnell läuft (500 MS), kann einfach
#define TRIGGER_CHECK XXX // XXX = Der Timer Intervall in MS
ins script schreiben bevor Trigger inkludiert wird.Pastebin: http://pastebin.com/JkvtmZeL
Haf Phun!
PS: Ein event wird unendlich oft aufgerufen solange ein Spieler nah genug dran ist, also solltet ihr das Event unter OnPlayerHandleTrigger lieber deaktivieren wenn ein Spieler es auslöst
-
Welches MySQL plugin verwendest du?
-
Hört doch ma auf hier rum zu heulen xD
Fakt ist, es gab einen festen abgabe Termin.
Fakt ist, Dieser wurde schon mehrmals verlängert, weil manch einer nicht hinterher kam.
Fakt ist, Nate und Q6600 sind die einzigen die werke abgeliefert haben, der rest nicht.Wenn man schon regeln aufstellt (ja, der abgabe Termin ist auch eine Regel), und auch no so drauf beharrt das die regeln eingehalten werden (siehe Copyright), dann sollte man auch so Fair gegenüber den leuten sein die etwas zum Abgemachten Zeitpunkt abliefern und endlich einen "gewinner" raus suchen. Ich kann gut verstehen das Nate es scheisse findet das immer und immer wieder aufgeschoben wird, in der Hoffnung es kommt noch was nach.
Wenn jemand unbedingt noch was machen will (was ich nicht glaube), kann er es immernoch nach dem Contest abliefern. Und wenns schön ist kann mans halt auswählen.
-
Welches Betriebsystem hast du?
//Edit: und mit welchem media player versuchst du die Datein zu öffnen?
-
Du machst dir das ganze viel zu umständlich. Wenn du per SELECT * FROM Autohaus alles aus der Tabelle holst, und dann einfach per fetch_row die einzelnen reihen abarbeitest, sparst du dir die zweite query. Zumal du dann auch nicht das Problem mit den ID's hast.
new
str[150],
idx = 1,
string[150]
;
mysql_query("SELECT * FROM `Autohaus`");
mysql_store_result();
while(mysql_fetch_row(str, "|"))
{
sscanf(str,"e<p<|>dddddffff>",AhCars[idx]);
DestroyVehicle(AhCars[idx][vID]);
AhCars[idx][vID] = AddStaticVehicleEx(AhCars[idx][Modell],AhCars[idx][PosX],AhCars[idx][PosY],AhCars[idx][PosZ],AhCars[idx][Rotation],1,0,3600000);
format(string,sizeof string,"Autohaus %d",AhCars[idx][vID]);
SetVehicleNumberPlate(AhCars[idx][vID],string);
format(string,sizeof string,"Modell: {FF0000}%s\n{00A0FF}Kaufpreis: %i€\nVerkaufspreis: %i€\nRepairpreis: %i€",Carname[AhCars[idx][Modell]-400],AhCars[idx][Kaufpreis],AhCars[idx][Verkaufspreis],AhCars[idx][Repairpreis]);
AhCars[idx][DreiDText] = Create3DTextLabel(string,hellblau,AhCars[idx][PosX],AhCars[idx][PosY],AhCars[idx][PosZ]+0.75,15,0);
Attach3DTextLabelToVehicle(AhCars[idx][DreiDText],AhCars[idx][vID],0,0,0.75);
idx++;
} -
Ist aber per CSS gemacht. Wirklich schlimm find ichs jetzt allerdings nicht...
Aber gefallen will mir der Style auch iwie nicht, ka wieso -
In Pawn direkt geht das nicht. Du könntest deinen Gamemode aber als plugin schreiben, sprich C++. Oder du benutzt das Java plugin.
-
Das hab ich ihm auch schon gesagt @ InternetInk
BTW ich sichere mir hiermit den namen german-germans, und Julian nimmt austria-germans, also bitte nicht verwenden. Danke
-
Du bist ein richtiges Tier :x
nehmt euch doch n Zimmer, lol.BTW Lua ist ne ganz andere art zu skripten als Pawn. Ich glaube kaum das sich das so einfach übersetzen lässt. Zumal du bei lua viel mehr möglichkeiten hast, weshalb du mit nem neuen script mehr erfolg haben wirst.
-
Wenns als define ist müsste es doch (theoretisch jedenfalls) so auch gehen:
Textdraw8 = TextDrawCreate(480.000000, 2.000000, "Version: "GAMEMODEVERSION"");
Sparste dir den string+ format^^ -
1040 Pixel
Warum fragst du?
Weil ichs nich mag wenn Foren nur die Hälfte des Bildschirms ausfüllen -
-
if(IsPlayerInAnyVehicle(playerid));
Hinter IF-Abfragen darf kein semikolon. -
Frag einfach ab, ob der spieler in der nähe des tores ist. Wenn ja -> Auf/Zu, wenn nein -> Geht nicht.
IsPlayerInRangeOfPoint -
sscanf(params,"us[30]",pID,grund)
-
siehe smalltalk, poste mal die Zeile dazu bzw den befehl oder was auch immer es ist.
-
if(pID == INVALID_PLAYER_ID)
Dein Befehl geht nur wenn die angegebene Playerid Invalid ist^^ocmd:permaban(playerid,params[])
{
new pID,grund[30];
if(sscanf(params,"uz",pID,grund)) return SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /permaban [playerid/PartOfName] [grund]");
if (PlayerInfo[playerid][pAdmin] >= 4)
{
if(IsPlayerConnected(pID) && pID != INVALID_PLAYER_ID)
{
new year, month, day, string[128], sendername[MAX_PLAYER_NAME];
GetPlayerName(playerid, sendername, sizeof(sendername));
getdate(year, month, day);
format(string, sizeof(string), "[ADMIN]: %s was Permabanned by %s, reason: %s (%d-%d-%d)", pID, sendername, grund,month,day,year);
BanLog(string);
format(string, sizeof(string), "[ADMIN]: %s was Permabanned by %s, reason: %s", pID, sendername, grund);
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[pID][pLevel] = -999;new ipaddress[16];
GetPlayerIp(pID,ipaddress,sizeof(ipaddress));
new BannedReason[126];
format(BannedReason, sizeof(BannedReason), "PermaBanned. Reason: %s", grund); //<- Wofür soll das sein? 1. Brauchst du keinen weiteren string erstellen, 2. formatierst du ihn aber benutzt ihn nie.
//Ban(pID);
Kick(pID);
return 1;
}
else
{
format(string, sizeof(string), " %d is not an active player.", pID);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
} -
Alles gute
Und warum er nicht antwortet? Warscheinlich weil er ein RL hat und Samstags abends was besseres zu tun hat
-
new zahl = 234;
printf(" 8 Stellige Zahl: %08d", zahl);
Ergibt: " 8 Stellige Zahl: 00000234"