moped(playerid)
*Hust* moped ist keine Funktion, sondern eine Variable also nur moped, ohne (playerid) ![]()
mfg. ![]()
moped(playerid)
*Hust* moped ist keine Funktion, sondern eine Variable also nur moped, ohne (playerid) ![]()
mfg. ![]()
Wenn du einen Interior meinst, dann so:
LinkVehicleToInterior(AddStaticVehicle(497,1861.0677,-2508.6660,13.7311,182.6994,0,1), 10); // NRG Heli
mfg. ![]()
Du hast das alles mit DestroyObject aber auch in:
public OnFilterScriptExit()
gesetzt ![]()
Ja, tut mir leid, sehe es gerade, dann schreib es so:
#define MAX_OBJ 200
new fObjekte[MAX_OBJ];
mfg. ![]()
Schreibe es so:
#define MAX_OBJ 115
new fObjekte[MAX_OBJ];
mfg. ![]()
Ok... Das hilft mir alles nicht weiter ( auch nicht die WIki^^)
Beantworte doch einfach meine Frage !
Da ist mir ein Fehler unterlaufen habe ein Komma vergessen, aus versehen.
Nein, so wie er das hat ist das schon richtig ![]()
public OnPlayerConnect(playerid)
{
Darunter kommt das nicht das kommt unter:
public OnFilterScriptInit()
mfg. ![]()
bin mir nicht sicher muss es aber nicht so sein:
if(GetPVarInt(playerid,"eingeloggt" == 1)
Das ist totaler Schwachsinn ![]()
Sieht dein SetPVar so aus: SetPVarInt(playerid, "eingeloggt", 1); ?
mfg. ![]()
Ist es möglich irgendwie den Servernamen über die Datenbank zu speichern?
Ja, du könntest das oben in dein Script schreiben:
#define GetServerName(%1) GetServerVarAsString("hostname",%1,sizeof(%1))
//und dann so abfragen:
new string[128];
GetServerName(string);
printf("Mein Servername lautet: %s",string);
mfg. ![]()
Nein, mit #define kannst du solche Werte nicht auslesen !
#define kannst du nur durch Hard Coding verändern ![]()
mfg. ![]()
Links sind erneuert
Okay, jetzt ist es zwar richtig gehookt, dennoch ist das System an sich schlecht !
Du solltest das so machen wie ich ![]()
mfg. ![]()
Aber es funktuniert doch
Darum geht es nicht.
Du könntest es auch nur so schreiben:
#define OnPlayerUpdate t_OnPlayerUpdate
und es würde gehen ![]()
Es geht bei dem obrigen nur darum Warnings zu vermeiden, z.B. 2 Includes die den selben Callback hooken...durch diese Abfragen wird dann wieder das eine #undef und dafür das andere #define ![]()
Ist nur eine kleine Sicherheitsmaßnahme für mehrere Includes ![]()
mfg. ![]()
Kannst mir den auch sagen welche Fehler ich beim hooken gemacht habe?
Klar ![]()
Also, du hast folgendes geschrieben:
#if defined _ALSt_OnPlayerUpdate
#undef OnPlayerUpdate
#else
#define _ALSt_OnPlayerUpdate
#endif
#define OnPlayerUpdate t_OnPlayerUpdate
Richtig wäre es aber so:
#if defined _ALS_OnPlayerUpdate
#undef OnPlayerUpdate
#else
#define _ALS_OnPlayerUpdate
#endif
#define OnPlayerUpdate t_OnPlayerUpdate
mfg. ![]()
OnGameModeInit(playerid) ????????????????????
Ach gottchen, ja es ist schon spät ![]()
Ist verbessert ![]()
Wie wenn er die Option 14 hat ,...
einfach -1 hinten?
Es wird hier von der Typid gesprochen nicht von der Virtuellen Welt ![]()
Ja, wie schon gesagt wurde, einfach das Pickup zerstören ![]()
forward P_Timer(Float:X,Float:Y,Float:Z);
//Wenn er in das Pickup reinfährt unten schreiben
SetTimerEx("P_Timer", 1000*10, 0, "fff", 0.0,0.0,0.0); //Hier Koordinaten vom Pickup einsetzen
DestroyPickup(pickupid);//pickupid halt von dem Pickup als Variable da einsetzen
//Der Timer
public P_Timer(Float:X,Float:Y,Float:Z)
{
CreatePickup(model,14,X,Y,Z,-1); //model halt ersetzen
return 1;
}
mfg. ![]()
Schreib das mal so:
public FeuerTimer()
{
for(new i; i < MAX_PLAYERS; i++)
{
if(Spieler[i][Team] != 3 || !IsPlayerConnected(i)) continue;
SendClientMessage(i,COLOR_RED,"********************************|Brand-Meldung|********************************");
SendClientMessage(i,COLOR_YELLOW,"An alle einheiten, wir haben eine Brandmeldung von einen Anwohner bekommen.");
SendClientMessage(i,COLOR_YELLOW,"Laut der aussage des Anwohners ist der Brand am Los Santos Burger Shot Nord.");
SendClientMessage(i,COLOR_YELLOW,"Bitte begeben sie sich sofort zum Einsatzort.");
AddFire(1756.1765,-1929.7749,16.6859);
AddFire(1210.4668,-921.8366,42.9317);
AddFire(1207.8740,-921.8892,42.9356);
AddFire(1206.0255,-921.0020,43.0624);
AddFire(1202.4823,-921.2293,43.0858);
AddFire(1201.5690,-923.6860,43.0025);
AddFire(1199.7859,-923.0240,43.0217);
AddFire(1197.1677,-923.3539,43.0496);
AddFire(1195.6759,-925.0435,43.0652);
AddFire(1194.5585,-924.3815,43.0773);
}
return 1;
}
mfg. ![]()
Ich möchte mal kurz sagen, dass das so schlecht gelöst ist, omg ![]()
Hier, mal deins zusammengefasst und verbessert mit mehr Funktionen:
#include <a_samp>
static bool:tazed[MAX_PLAYERS];
public OnFilterScriptInit() return print("Script Loaded (c) by Kaliber");
GetName(playerid) {
new name[24];
GetPlayerName(playerid,name,24);
return name;
}
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid)
{
if(GetPlayerWeapon(playerid) != 23 || tazed[damagedid]) return 1;
new string[128];
TogglePlayerControllable(damagedid,0);
ApplyAnimation(damagedid,"CRACK","crckdeth2",4.1,1,1,1,1,1);
SetTimerEx("Tazered", 15000, 0, "d",damagedid);
tazed[damagedid] = true;
format(string, sizeof string, "* %s hat %s mit einem Stromschocker getroffen.",GetName(playerid),GetName(damagedid));
RangeSend(playerid, 30.0, string);
GameTextForPlayer(damagedid, "~r~Geschockt", 5000, 3);
return 1;
}
RangeSend(playerid, Float:range, txt[]) {
new i,Float:Q[3];
GetPlayerPos(playerid,Q[0],Q[1],Q[2]);
for(; i<MAX_PLAYERS; i++) {
if(!IsPlayerInRangeOfPoint(i,range,Q[0],Q[1],Q[2])) continue;
SendClientMessage(i,0xC2A2DAAA,txt);
}
return 1;
}
forward Tazered(playerid);
public Tazered(playerid) {
TogglePlayerControllable(playerid,1);
tazed[playerid] = false;
ClearAnimations(playerid);
return 1;
}
Das ist 1000x besser als das was du da gemacht hast zudem ist bei dir die Variable "tazetimer[MAX_PLAYERS]" total Sinnlos ![]()
Schau dir an, wie ich das gemacht habe und lerne bitte etwas daraus ![]()
mfg. ![]()
//Edit: Rechtschreibung im Code...
So zum Beispiel:
//In einem CMD oder Callback
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Test Text","Hier bitte den Text eingeben:","Bestätigen","Abbrechen");
//Unter OnPlayerDialogResponse
if(dialogid == 1) {
if(!response) return 1;
new string[128];
format(string,128,"Du hast eingegeben: %s",inputtext);
SendClientMessage(playerid,-1,string);
}
mfg. ![]()