Ich glaube das geht nicht da SA:MP Scripte mit Pawn und MTA Scripte mit LUA geschrieben sind,beide haben einen ganz anderen syntax andere Funktionen usw,ich bezweifel das stark
Beiträge von InternetInk aka Benjamin
-
-
Unter OnPlayerConnect eine Abfrage ob bereits eine Userdatei besteht und dann halt ShowPlayerDialog http://wiki.sa-mp.com/wiki/ShowPlayerDialog
-
Lemmings und Wings of Fury hab ich selbst auchnoch auf meinem Uralt Rechner gespielt
(Da war das Diskettenlaufwerk in der Tastatur,dann gabs noch Bildschirm dazu und das wars xD) -
Lad dir Pawno neu runter > SA-MP 0.3a R4 Windows Server
-
In > Pawno/include/ ?
Pawno schließen und neustarten?! -
Oh ja weißte, 100000000000% geht es mit deinem "Tutorial" nicht

-
meine metode geht ich habe es ja so in meinem script
Das glaub ich dir nicht,das kann niemals funktionieren xD die Werte Stimmen ja nichtmal
-
Spieler[playerid][Adminlevel] == 1
Hättest schreiben sollen wie es z.B beim GF heißt oder wie es sonst heißen kann (nur mit einem Array)
Ich hab es durch PlayerInfo ersetzt kam erstmal dieser Error:
Nachdem ich das grade so hinbekommen habe kommt undefined Symbol COLOR_GELB,nachdem ich das iwie gelöst hab kommen 4 Warnings:
tag mismatch
Create3DTextLabel(GMTEXT,COLOR_YELLOW,0,0,0,70.5,1);
//aus wiki
Create3DTextLabel(text[], color, Float:X, Float:Y, Float:Z, Float:DrawDistance, virtualworld, testLOS)
Also es stimmt 0,nicht wirklich erklärt und erläutert...0/10 Ganz schwach

-
Spoiler anzeigen
#define TANK_SYS
#include <a_samp>
#include sscanf
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
#define WHITE 0xF6F6F6FF
#define YELLOW 0xF6F600F6Spoiler anzeigen new Zwischensumme;
new Text:TT_0[MAX_PLAYERS];
#if defined TANK_SYS
new Text:TT_1[MAX_PLAYERS];
#endif
new Text:TT_2;
new Text:TT_3;
new Text:TT_4;
enum fahrzeug
{
tank,
hat_tank,
}
new AUTOX[MAX_VEHICLES][fahrzeug];
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" TankSystem von Lonsdale");
print("--------------------------------------\n");
// Lokale Textdraws
TT_2 = TextDrawCreate(101.000000,344.000000," /");
TT_3 = TextDrawCreate(125.000000,340.000000,"--------");
TT_4 = TextDrawCreate(117.000000,410.000000," ");
TextDrawAlignment(TT_2,0);
TextDrawAlignment(TT_3,0);
TextDrawAlignment(TT_4,0);
TextDrawBackgroundColor(TT_2,0x000000ff);
TextDrawBackgroundColor(TT_3,0x000000ff);
TextDrawBackgroundColor(TT_4,0x000000ff);
TextDrawFont(TT_2,3);
TextDrawLetterSize(TT_2,1.000000,1.000000);
TextDrawFont(TT_3,3);
TextDrawLetterSize(TT_3,1.000000,1.000000);
TextDrawFont(TT_4,3);
TextDrawLetterSize(TT_4,1.000000,1.000000);
TextDrawColor(TT_2,0x000000ff);
TextDrawColor(TT_3,0x000000ff);
TextDrawColor(TT_4,0x000000ff);
TextDrawSetOutline(TT_2,1);
TextDrawSetOutline(TT_3,1);
TextDrawSetOutline(TT_4,1);
TextDrawSetProportional(TT_2,1);
TextDrawSetProportional(TT_3,1);
TextDrawSetProportional(TT_4,1);
TextDrawSetShadow(TT_2,1);
TextDrawSetShadow(TT_3,1);
TextDrawSetShadow(TT_4,1);
SetTimer("UpdateSpeed",1000,1);
#if defined TANK_SYS
SetTimer("Update_Tank",18000,1);
for(new i = 0;i<MAX_VEHICLES;i++)
{
AUTOX[i][tank] = (100);
AUTOX[i][hat_tank] = (1);
}
#endif
return 1;
}
public OnPlayerConnect(playerid)
{Spoiler anzeigen #if defined TANK_SYS
TT_1[playerid] = TextDrawCreate(141.000000,382.000000,"Tank : 100/100");
TextDrawUseBox(TT_1[playerid],1);
TextDrawBoxColor(TT_1[playerid],0x00000099);
TextDrawTextSize(TT_1[playerid],250.000000,0.000000);
TextDrawAlignment(TT_1[playerid],0);
TextDrawBackgroundColor(TT_1[playerid],0x000000ff);
TextDrawFont(TT_1[playerid],3);
TextDrawLetterSize(TT_1[playerid],0.399999,1.000000);
TextDrawColor(TT_1[playerid],0xffffffff);
TextDrawSetOutline(TT_1[playerid],1);
TextDrawSetProportional(TT_1[playerid],1);
TextDrawSetShadow(TT_1[playerid],1);
#endifSpoiler anzeigen return 1;
}Spoiler anzeigen public OnPlayerDisconnect(playerid, reason)
{
TextDrawDestroy(TT_0[playerid]);
#if defined TANK_SYS
TextDrawDestroy(TT_1[playerid]);
#endif
TextDrawHideForPlayer(playerid,TT_2);
TextDrawHideForPlayer(playerid,TT_3);
TextDrawHideForPlayer(playerid,TT_4);
return 1;
}Spoiler anzeigen public OnPlayerCommandText(playerid, cmdtext[])
{
#if defined TANK_SYS
if (strcmp("/tanken", cmdtext, true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(GetPlayerState(playerid) == 2)
{
new vehicleids = GetPlayerVehicleID(playerid);
if(IstAnDerTanke(playerid) && !NoCar(vehicleids))
{
new ZwischenSumme;
ZwischenSumme = 100 - AUTOX[vehicleids][tank];
AUTOX[vehicleids][tank] += ZwischenSumme;
GivePlayerMoney(playerid,-ZwischenSumme * 3);
GameTextForPlayer(playerid,"~b~Auto ~r~wurde getankt",2000,0);
new forS[128];
format(forS,sizeof(forS),"* Du hast dein Auto fuer %d $ Getankt *",ZwischenSumme);
SendClientMessage(playerid,YELLOW,forS);
}
else
{
SendClientMessage(playerid,WHITE,"* Du musst an einer Tankstelle sein! *");
}
}
}
return 1;
}
if (strcmp("/raus", cmdtext, true) == 0)
{
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid,1);
return 1;
}
dcmd(raus,4,cmdtext);
dcmd(tanken,6,cmdtext);
#endif
return 0;
}Spoiler anzeigen dcmd_raus(playerid, params[]) {
#pragma unused params
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid,true);
return 1;
}Spoiler anzeigen dcmd_tanken(playerid, params[]) {
#pragma unused params
if(GetPlayerState(playerid) != 2) return 1;
new
vehid = GetPlayerVehicleID(playerid);
if(IstAnDerTanke(playerid) && !NoCar(vehid)) {
new ZwischenSumme = 100 - AUTOX[vehid][tank];
AUTOX[vehid][tank] += ZwischenSumme;
GivePlayerMoney(playerid,-Zwischensumme*3);
GameTextForPlayer(playerid,"~b~Auto~r~ wurde getankt",2000,0);
new forstr[64];
format(forstr, sizeof(forstr),"* Du hast dein Auto fuer %d $ aufgetankt *", ZwischenSumme);
SendClientMessage(playerid, YELLOW, forstr);
}
else return SendClientMessage(playerid,WHITE,"* Du musst an einer Tankstelle sein! *");
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(newstate == 2)
{
new tankx[128];
TextDrawShowForPlayer(playerid,TT_0[playerid]);
TextDrawShowForPlayer(playerid,TT_1[playerid]);
TextDrawShowForPlayer(playerid,TT_2);
TextDrawShowForPlayer(playerid,TT_3);
TextDrawShowForPlayer(playerid,TT_4);
format(tankx,sizeof tankx,"Tank : %d/100",AUTOX[vehicleid][tank]);
TextDrawSetString(TT_1[playerid],tankx);
}
else if(newstate == 1)
{Spoiler anzeigen TextDrawHideForPlayer(playerid,TT_0[playerid]);
#if defined TANK_SYS
TextDrawHideForPlayer(playerid,TT_1[playerid]);
#endif
TextDrawHideForPlayer(playerid,TT_2);
TextDrawHideForPlayer(playerid,TT_3);
TextDrawHideForPlayer(playerid,TT_4);
}
return 1;
}Spoiler anzeigen forward PlayerToPoint(Float:radi, playerid, Float:xs, Float:ys, Float:zs);Spoiler anzeigen forward IstAnDerTanke(playerid);
public IstAnDerTanke(playerid)
{
if(IsPlayerConnected(playerid))
{
if(PlayerToPoint(6.0,playerid,1004.0070,-939.3102,42.1797) || PlayerToPoint(6.0,playerid,1944.3260,-1772.9254,13.3906))
{
return 1;
}
else if(PlayerToPoint(6.0,playerid,-90.5515,-1169.4578,2.4079) || PlayerToPoint(6.0,playerid,-1609.7958,-2718.2048,48.5391))
{
return 1;
}
else if(PlayerToPoint(6.0,playerid,-2029.4968,156.4366,28.9498) || PlayerToPoint(8.0,playerid,-2408.7590,976.0934,45.4175))
{
return 1;
}
else if(PlayerToPoint(5.0,playerid,-2243.9629,-2560.6477,31.8841) || PlayerToPoint(8.0,playerid,-1676.6323,414.0262,6.9484))
{
return 1;
}
else if(PlayerToPoint(6.0,playerid,2202.2349,2474.3494,10.5258) || PlayerToPoint(10.0,playerid,614.9333,1689.7418,6.6968))
{
return 1;
}
else if(PlayerToPoint(8.0,playerid,-1328.8250,2677.2173,49.7665) || PlayerToPoint(6.0,playerid,70.3882,1218.6783,18.5165))
{
return 1;
}
else if(PlayerToPoint(8.0,playerid,2113.7390,920.1079,10.5255) || PlayerToPoint(6.0,playerid,-1327.7218,2678.8723,50.0625))
{
return 1;
}
}
return 0;
}
public PlayerToPoint(Float:radi, playerid, Float:xs, Float:ys, Float:zs)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -xs);
tempposy = (oldposy -ys);
tempposz = (oldposz -zs);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}
return 0;
}
forward Update_Tank();
public Update_Tank()
{
for(new i = 0;i<MAX_PLAYERS;i++)
{
if(GetPlayerState(i) == 2)
{
if(IsPlayerConnected(i))
{
new vehicleid = GetPlayerVehicleID(i);
new tank_format[128];
if(AUTOX[vehicleid][tank] > 1)
{
if(!NoCar(vehicleid))
{
AUTOX[vehicleid][tank]--;
format(tank_format,sizeof tank_format,"Tank : %d/100",AUTOX[vehicleid][tank]);
TextDrawSetString(TT_1[i],tank_format);
AUTOX[vehicleid][hat_tank] = 1;
}
else
{
TextDrawSetString(TT_1[i],"Tank : N/A");
AUTOX[vehicleid][hat_tank] = 1;
}
}
else
{
if(!NoCar(vehicleid))
{
TextDrawSetString(TT_1[i],"Tank Leer");
AUTOX[vehicleid][hat_tank] = 0;
TogglePlayerControllable(i,0);
}
}
}
}
}
return 1;
}
stock NoCar(vehicleid)
{
new modell = GetVehicleModel(vehicleid);
switch(modell)
{
// Helis ( waere auch zu unrealistisch wenn die Dinger Freezed wären :/ )
case 548:return 1;
case 425:return 1;
case 417:return 1;
case 487:return 1;
case 488:return 1;
case 497:return 1;
case 563:return 1;
case 447:return 1;
case 469:return 1;
// RC
case 464:return 1;
case 465:return 1;
case 501:return 1;
case 564:return 1;
case 594:return 1;
// Trailer / Angeanger
case 435:return 1;
case 450:return 1;
case 591:return 1;
case 606:return 1;
case 607:return 1;
case 610:return 1;
case 569:return 1;
case 590:return 1;
case 584:return 1;
case 570:return 1;
case 608:return 1;
case 611:return 1;
// Flugzeuge ( waere auch zu unrealistisch wenn die Dinger Freezed wären :/ ) ²
case 592:return 1;
case 577:return 1;
case 511:return 1;
case 512:return 1;
case 593:return 1;
case 520:return 1;
case 553:return 1;
case 476:return 1;
case 519:return 1;
case 460:return 1;
case 513:return 1;
// Zuege & andere non Cars
case 485:return 1;
case 538:return 1;
case 457:return 1;
case 530:return 1;
case 537:return 1;
case 571:return 1;
case 572:return 1;
case 574:return 1;
case 449:return 1;
}
return 0;
}
-
Es heißt IstAnDerTanke nicht IstAnderTanke,mach das new IstAnderTanke oben weg
-
Oder meinst "SendClientMessageToAll"? (Ausserhalb der OnPlayerConnect zu verwenden)
Warum Außerhalb? Kann man doch auch innerhalb verwenden? Kann ich dir direkt nen Beispiel für zeigen xDAls nachricht an einen Spieler taugt SendClientMessageToAll logischer weise natürlich net
-
OnPlayerCommandText(playerid,"/cmd");
-
Der klammerfehler kann überall sein,such am besten da wo du zuletzt was bearbeitet hast,weißt du das nichtmehr kannste das script auch neu runterladen das ist wie ne nadel im heuhaufen
-
ja wenn du die include hast dann müsste es ja gehen also haste die include wohl nicht unter Pawno/include
wenn dir ünrigens eine include fehlt dann gehste hier auf die startseite und gibst den namen oben rechts in die SuchFunktion ein
-
Den Titel hab ich mir übrigens nicht selber verliehen

-
pawno neustarten
-
-
[ GAMEMODE ] V3.5.1 by GRC !BugFrei!
-
Mach oben unter den includes noch
new SpecialClass[MAX_PLAYERS];Public's werden immer bei einer Bestimmten Aktion aufgerufen bzw ausgeführt z.B OnPlayerConnect,wird wann aufgerufen?
Wenn der spieler Connected,innerhalb dieses publics gibt es einen(1) Parameter und zwar playerid,eben halt die playerid vom spieler der connected,und mit der kann man dann arbeiten. Genauso bei RequestClass,es gibt wieder den spieler der es auslöst mit playerid aber es gibt einen zweiten parameter,nämlich die Classid die er wählt. -
naja recht ordentlich gemappt aber ich find sieht aus wie fast jede andere auch
Außerdem passt das Rote Zollhaus nicht mit diesem Hellgründen Wachhäusern da zusammen...
Achja und ich glaub die Schranke kann man kaputt fahren oder irre ich mich?