aaah xD habs xD
aber das bringt mich nicht wirklich weiter... diese define zeile hab ich drinnen und alles...
aaah xD habs xD
aber das bringt mich nicht wirklich weiter... diese define zeile hab ich drinnen und alles...
ne es passiert gar nichts^^ und ja ich habs in der server.cfg und compiled^^
wo soll das bei wiki sein? ich finds nich
Heyho,
ich hab ein problem. und zwar hab ich ein fs geladen zum testen darin sind die befehle per dcmd gemacht aber sonst hab ich überall nur die befehle per strcmp und wenn ich jetzt ingame bin gehen nur die befehle mit strcmp und die anderen nicht O.o
muss ich da noch irgendwas definieren oder so?
mfg Hoscht
ok ich lads schnell^^
/*
*
* Sicherheitsgurte aka "Durch die Scheibe fliegen" aus GTA IV
* by NeoPhoenix aka ArgonX5
*
* www.NeoPhoenix.de
*
* Ein herzlichen Dank an Julian von gta-servers.de für den
* Testserver.
*
* Dieses Filterscript steht unter CreativeCommon Licenses. Aber
* weil sich eh keiner dran hält ist es mir auch egal, ob ihr
* die Copyrights löscht oder nicht.
*
*
* Thanks to:
* - NeoPhoenix (FS, Tester)
* - Julian (Testserver)
*
*/
#include <a_samp>
#define KEY_ANSCHNALL KEY_LOOK_BEHIND
#define MAX_SPIELER 20
#define COLOR_GIFT 0xCCFF00CA
#define SCM SendClientMessage
#define COLOR_RED 0xFF6347AA
#define ZEIT 12000
#define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
new Float:AlteHP[MAX_VEHICLES];
main()
{
print("\n");
print("-- Sicherheitsgurte by NeoPhoenix\n");
print("\n");
}
public OnFilterScriptInit()
{
AddPlayerClass(295, 0, 0, 20, 0, 0, 0, 0, 0, 0, 0);
for(new car=0; car<MAX_VEHICLES; car++)
{
AlteHP[car] = 1000.0;
}
return 1;
}
stock InvalidVehicle(id)
{
if(id == 448 || id == 461 || id == 462 || id == 463 || id == 468 || id == 481 || id == 509 || id == 510) return true;//Motorräder
if(id == 521 || id == 522 || id == 581 || id == 586) return true;//+ Fahrräder
if(id == 430 || id == 446 || id == 452 || id == 453 || id == 545 || id == 472 || id == 473 || id == 485) return true;//Boote
if(id == 493 || id == 595) return true;//und alles was dazu gehört
if(id == 417 || id == 425 || id == 447 || id == 460 || id == 469 || id == 476 || id == 487 || id == 488) return true;//Flugzeuge,
if(id == 497 || id == 511 || id == 512 || id == 513 || id == 519 || id == 520 || id == 548 || id == 553) return true;//Helikopter
if(id == 563 || id == 577 || id == 592 || id == 593) return true;//und weitere Flugvehicle
return false;
}
public OnPlayerConnect(playerid)
{
SetPVarInt(playerid, "IstAngeschnallt", 0);
return 1;
}
public OnVehicleDamageStatusUpdate(vehicleid, playerid)
{
if(!IsPlayerInAnyVehicle(playerid)) return true;
if(InvalidVehicle(GetVehicleModel(GetPlayerVehicleID(playerid)))) return true;
new Float: vHP;
GetVehicleHealth(vehicleid, vHP);
if((AlteHP[vehicleid] - vHP) <= 50)
{
AlteHP[vehicleid] = vHP;
return true;
}
if(GetPVarInt(playerid, "IstAngeschnallt") == 0)
{
new Float:PosX, Float:PosY, Float:Angle, Float:PosZ, Float:HP, Float:nHP;
RemovePlayerFromVehicle(playerid);
GetPlayerPos(playerid, PosX, PosY, PosZ);
GetPlayerFacingAngle(playerid, Angle);
SetPlayerPos(playerid,PosX+2,PosY+2,PosZ+0.1);
GetPlayerHealth(playerid, HP);
SetPlayerHealth(playerid, HP-20);
if(GetPlayerHealth(playerid, nHP) > 0)
{
ApplyAnimation(playerid, "CRACK", "crckdeth2", 4.0, 1, 0, 0, 0, ZEIT);
}
GameTextForPlayer(playerid, "~r~Du bist durch die Scheibe geflogen", 5000, 5);
}
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
if(InvalidVehicle(GetVehicleModel(GetPlayerVehicleID(playerid)))) return true;
SetPVarInt(playerid, "IstAngeschnallt", 0);
SCM(playerid, COLOR_RED, "Du bist nicht angeschnallt. Gebe /gurt [anlegen/ablegen] ein um dich an/abzuschnallen.");
}
return 1;
}
/*public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(newkeys && KEY_ANSCHNALL)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(InvalidVehicle(GetVehicleModel(GetPlayerVehicleID(playerid)))) return true;
if(GetPVarInt(playerid, "IstAngeschnallt") == 0)
{
SCM(playerid, COLOR_GIFT, "Du hast dir den Sicherheitsgurt angelegt.");
SetPVarInt(playerid, "IstAngeschnallt", 1);
return 1;
}
if(GetPVarInt(playerid, "IstAngeschnallt") == 1)
{
SCM(playerid, COLOR_GIFT, "Du hast den Sicherheitsgurt abgelegt.");
SetPVarInt(playerid, "IstAngeschnallt", 0);
return 1;
}
}
}
return 1;
}*/
public OnPlayerCommandText(playerid, cmdtext[])
{
dcmd(gurt,4,cmdtext);
return 1;
}
stock n_SetVehicleHealth(car, Float:hp)
{
AlteHP[car] = hp;
SetVehicleHealth(var, hp);
return 1;
}
dcmd_gurt(playerid,params[])
{
new xxx[50];
if(sscanf(params, "s",xxx))
{
return SendClientMessage(playerid,COLOR_RED,"HINWEIS: /gurt [anlegen/ablegen]");
}
if(!IsPlayerInAnyVehicle(playerid)) return SCM(playerid, COLOR_RED, "Du bist in keinem Fahrzeug");
if(InvalidVehicle(GetVehicleModel(GetPlayerVehicleID(playerid)))) return SCM(playerid, COLOR_RED, "Dein jetziges Vehicle hat keine Sicherheitsgurte.");
if(strcmp(xxx,"anlegen",true) == 0)
{
if(GetPVarInt(playerid, "IstAngeschnallt") == 1) { SCM(playerid, COLOR_RED, "Du bist schon angeschnallt"); return 1; }
SCM(playerid, COLOR_GIFT, "Du hast dir den Sicherheitsgurt angelegt.");
SetPVarInt(playerid, "IstAngeschnallt", 1);
return 1;
}
else if(strcmp(xxx,"ablegen",true) == 0)
{
if(GetPVarInt(playerid, "IstAngeschnallt") == 0) { SCM(playerid, COLOR_RED, "Du bist gar nicht angeschnallt"); return 1; }
SCM(playerid, COLOR_GIFT, "Du hast dir den Sicherheitsgurt abgelegt.");
SetPVarInt(playerid, "IstAngeschnallt", 0);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "HINWEIS: /gurt [Aktion]. Aktionen: angelegen, ablegen");
}
return true;
}
stock sscanf(string[], format[], {Float,_}:...)
{
#if defined isnull
if (isnull(string))
#else
if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
#endif
{
return format[0];
}
#pragma tabsize 4
new
formatPos = 0,
stringPos = 0,
paramPos = 2,
paramCount = numargs(),
delim = ' ';
while (string[stringPos] && string[stringPos] <= ' ')
{
stringPos++;
}
while (paramPos < paramCount && string[stringPos])
{
switch (format[formatPos++])
{
case '\0':
{
return 0;
}
case 'i', 'd':
{
new
neg = 1,
num = 0,
ch = string[stringPos];
if (ch == '-')
{
neg = -1;
ch = string[++stringPos];
}
do
{
stringPos++;
if ('0' <= ch <= '9')
{
num = (num * 10) + (ch - '0');
}
else
{
return -1;
}
}
while ((ch = string[stringPos]) > ' ' && ch != delim);
setarg(paramPos, 0, num * neg);
}
case 'h', 'x':
{
new
num = 0,
ch = string[stringPos];
do
{
stringPos++;
switch (ch)
{
case 'x', 'X':
{
num = 0;
continue;
}
case '0' .. '9':
{
num = (num << 4) | (ch - '0');
}
case 'a' .. 'f':
{
num = (num << 4) | (ch - ('a' - 10));
}
case 'A' .. 'F':
{
num = (num << 4) | (ch - ('A' - 10));
}
default:
{
return -1;
}
}
}
while ((ch = string[stringPos]) > ' ' && ch != delim);
setarg(paramPos, 0, num);
}
case 'c':
{
setarg(paramPos, 0, string[stringPos++]);
}
case 'f':
{
new changestr[16], changepos = 0, strpos = stringPos;
while(changepos < 16 && string[strpos] && string[strpos] != delim)
{
changestr[changepos++] = string[strpos++];
}
changestr[changepos] = '\0';
setarg(paramPos,0,_:floatstr(changestr));
}
case 'p':
{
delim = format[formatPos++];
continue;
}
case '\'':
{
new
end = formatPos - 1,
ch;
while ((ch = format[++end]) && ch != '\'') {}
if (!ch)
{
return -1;
}
format[end] = '\0';
if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
{
if (format[end + 1])
{
return -1;
}
return 0;
}
format[end] = '\'';
stringPos = ch + (end - formatPos);
formatPos = end + 1;
}
case 'u':
{
new
end = stringPos - 1,
id = 0,
bool:num = true,
ch;
while ((ch = string[++end]) && ch != delim)
{
if (num)
{
if ('0' <= ch <= '9')
{
id = (id * 10) + (ch - '0');
}
else
{
num = false;
}
}
}
if (num && IsPlayerConnected(id))
{
setarg(paramPos, 0, id);
}
else
{
#if !defined foreach
#define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
#define __SSCANF_FOREACH__
#endif
string[end] = '\0';
num = false;
new
name[MAX_PLAYER_NAME];
id = end - stringPos;
foreach (Player, playerid)
{
GetPlayerName(playerid, name, sizeof (name));
if (!strcmp(name, string[stringPos], true, id))
{
setarg(paramPos, 0, playerid);
num = true;
break;
}
}
if (!num)
{
setarg(paramPos, 0, INVALID_PLAYER_ID);
}
string[end] = ch;
#if defined __SSCANF_FOREACH__
#undef foreach
#undef __SSCANF_FOREACH__
#endif
}
stringPos = end;
}
case 's', 'z':
{
new
i = 0,
ch;
if (format[formatPos])
{
while ((ch = string[stringPos++]) && ch != delim)
{
setarg(paramPos, i++, ch);
}
if (!i)
{
return -1;
}
}
else
{
while ((ch = string[stringPos++]))
{
setarg(paramPos, i++, ch);
}
}
stringPos--;
setarg(paramPos, i, '\0');
}
default:
{
continue;
}
}
while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
{
stringPos++;
}
while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
{
stringPos++;
}
paramPos++;
}
do
{
if ((delim = format[formatPos++]) > ' ')
{
if (delim == '\'')
{
while ((delim = format[formatPos++]) && delim != '\'') {}
}
else if (delim != 'z')
{
return delim;
}
}
}
while (delim > ' ');
return 0;
}
LOL
jetzt findet er anscheinend die include aber jetzt kommt folgendes
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(67) : error 017: undefined symbol "SetPVarInt"
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(71) : warning 235: public function lacks forward declaration (symbol "OnVehicleDamageStatusUpdate")
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(82) : error 017: undefined symbol "GetPVarInt"
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(105) : error 017: undefined symbol "SetPVarInt"
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(159) : error 017: undefined symbol "GetPVarInt"
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(161) : error 017: undefined symbol "SetPVarInt"
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(166) : error 017: undefined symbol "GetPVarInt"
D:\Gta San Andreas 3\filterscripts\Gta4scheibefliegen.pwn(168) : error 017: undefined symbol "SetPVarInt"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
7 Errors.
wtf?
xDDD wtf
moin moin,
ich hab n problem undzwar, ich hab eine include eingefügt, die ich für ein filterscript brauche^^ (hab vorher errors bekommen)
dann will ich wieder compilen, die fehler sind weg, aaaaaber da steht jetzt
Zitatfatal error 100: cannot read from file: "neo_inc_feature_gurt"
obwohl ichs im pawno/includes ordner hab
was is das?^^
mfg Hoscht
#define FILTERSCRIPT
#include <a_samp>
new tschranke;
forward TerroristenSchranke();
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Terroristen Base");
print("--------------------------------------\n");
{
CreateObject(12942, -789.361877, 2445.030518, 156.077271, 0.0000, 0.0000, 180.0001);
CreateObject(11440, -774.631714, 2430.651123, 155.692413, 0.0000, 0.0000, 191.2502);
CreateObject(751, -815.973511, 2364.463623, 150.826080, 0.0000, 0.0000, 0.0000);
CreateObject(966, -812.021423, 2363.218994, 150.482544, 0.0000, 356.2615, 157.5000);
tschranke = CreateObject(968, -812.032104, 2363.208252, 151.366837, 0.8594, 94.7094, 337.5000);
CreateObject(967, -813.649597, 2363.912598, 150.586945, 0.0000, 0.0000, 247.5000);
CreateObject(751, -804.100098, 2359.678955, 149.765747, 0.0000, 0.0000, 213.7499);
CreateVehicle(505,-812.7223,2422.9885,157.0509,225.9114,44,44,1500); // jeep1
CreateVehicle(505,-814.8560,2418.4524,156.9125,222.3363,44,44,1500); // jeep2
CreateVehicle(500,-816.0045,2419.8125,156.9059,221.5357,44,44,1500); // jeep2richtig
CreateVehicle(468,-786.0939,2395.7126,156.2615,15.9117,44,44,1500); // sanchez1
CreateVehicle(468,-783.8835,2396.1401,156.3603,14.2950,4,4,1500); // sanchez2
CreateVehicle(468,-781.4929,2397.1072,156.4907,17.4964,44,44,1500); // sanchez3
CreateVehicle(468,-778.6634,2397.9390,156.5994,20.7757,4,4,1500); // sanchez4
CreateVehicle(471,-778.0492,2406.6475,156.5521,89.2579,44,44,1500); // quad1
CreateVehicle(471,-778.1838,2409.5842,156.5658,95.9376,44,44,1500); // quad2
CreateVehicle(471,-778.3491,2412.9172,156.5782,93.9154,44,44,1500); // quad3
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/topen", true)==0)
{
MoveObject(tschranke,-812.032104,2363.208252,151.366837, 2);
SetTimer("TerroristenSchranke", 12000,0);
return 1;
}
return 1;
}
public TerroristenSchranke()
{
MoveObject(tschranke,-812.032104, 2363.208252, 151.366837, 2);
return 1;
}
ich finde den fehler einfach nicht, die schranke öffnet sich nicht -.-
danke
funzt alles
kann /close
ah xD kk
aber bei mir kommt ne fehlermeldung wenn ich das so mache
AddStaticVehicle(432, -1447.503662, 426.322723, 1.308493, 338, 107, 107, 1500);
Zitatwarning 202: number of arguments does not match definition
O.o
achsoo das 1, 1 sind die farben? xD
und wann respawnt das car wenn ich z.b 2 eingeb?
lol da kann man auch fahrzeuge einfügen im map editor? LOL wusste ich gar nich sry xDD
ich probiers mal^^
edit:
öhm ja....
ich hab jetzt fahrzeuge "gemappt" also als spawnpoint.... aber wenn ich das jetzt in den map converter einfüge die .map datei, stehen immernoch nur die objecte drinnen und nicht die spawnpoints O.o
edit2:
moment ich habs glaub ich xDD habs mitm editor geöffnet
edit3:
-.- next problem
Zitat<spawnpoint name="spawnpoint (6)">
<position>-1447.503662 426.322723 1.308493</position>
<rotation>338</rotation>
<vehicle>432</vehicle>
</spawnpoint>
so steht das in der map datei der spawnpoint, aber da fehlen noch coords damit ich das als car einfügen kann x,y,z hab ich car id auch rotation weiß ich nich genau wo ich die hinmachen soll und da fehlen noch 1 oder 2 sachen damit der compiler sich nich aufpisst xD
boah ich glaub ich steh grad aufm schlauch xD
also
ich geh in den map editor, mappe mein zeug bla bla bla
dann öffne ich die .map datei und weiter? da sehe ich doch nur die objekte die ich gemappt habe und ihre coords und nicht die coords wo ich das car haben will^^
und woher bekomm ich die coords von dem punkt wo ich die fahrzeuge hinhaben will?^^
das gemappte ist ja nur da, wenn ich aufm server gehe und da kann ich ja keine coords speichern -.-
ja schon xD aber ich will ja dahin, wo ich das gemappt habe^^
und da ist wasser da komm ich ja nicht hin
Heyho,
wie kann ich Fahrzeuge spawnen bzw. die position herrausfinden wenn ich etwas gemappt habe im wasser und darauf die fahrzeuge haben möchte?
im debug modus is das ja nicht da und im single player kann ich keine fahrzeuge speichern (also die pos)
wie macht man das am dümmsten?^^
mfg Hoscht
ich hab einsteins objektstreamer genommen
Moinsen,
da ich zuviele obj drinnen hab, wollte ich einen object streamer reinhaun... das hab ich dann auch gemacht, alles geändert was dort stand aber wenn ich jetzt zu der stelle gehe, wo die objecte eig. sein SOLLTEN sind keine da -.-
#include <a_samp>
#include <Obj_Streamer>
#if defined FILTERSCRIPT
new ArmyPlattform1;
new ArmyPlattform2;
forward ArmyPlattformback();
public OnFilterScriptInit()
{
StreamObject_OnGameModeInit();
print("\n--------------------------------------");
print(" Army Base");
print("--------------------------------------\n");
{
ArmyPlattform1 = CreateObjectToStream(7024, -1425.788086, 419.349609, -12.267847, 0.0000, 0.0000, 180.0000);
ArmyPlattform2 = CreateObjectToStream(7024, -1355.468384, 429.078796, -12.267847, 0.0000, 0.0000, 180.0000);
CreateObjectToStream(987, -1512.905151, 481.520233, 6.187501, 0.0000, 0.0000, 180.0000);
CreateObjectToStream(986, -1536.919434, 482.617493, 6.865364, 0.0000, 0.0000, 0.0000);
CreateObjectToStream(986, -1521.901367, 482.629059, 6.865762, 0.0000, 0.0000, 180.0000);
}
return 1;
}
public OnFilterScriptExit()
{
StreamObject_OnGameModeInit();
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(cmdtext, "/armycars", true)==0)
{
MoveObjectToStream(ArmyPlattform1, -1425.788086, 419.349609, -6.455412, 2.0);
MoveObjectToStream(ArmyPlattform2, -1355.468384, 429.078796, -6.452737, 2.0);
SetTimer("ArmyPlattformback", 20000,0);
return 1;
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
StreamObject_OnGameModeInit();
return 1;
}
public ArmyPlattformback()
{
MoveObjectToStream(ArmyPlattform1, -1425.788086, 419.349609, -12.267847, 2.0);
MoveObjectToStream(ArmyPlattform2, -1355.468384, 429.078796, -12.267847, 2.0);
return 1;
}
#endif
wisst ihr iwas?