SAMsites.inc im Pawno/includes Ordner?
Beiträge von sLy
-
-
Die-Stämme,
Grepolis,
FarmeramaAlle gespielt und ich mag eig. alle von den dreien , ausser Grepolis , aber Grepolis ist auch okay
-
Combat Arms,
Brick-Force (Minecraft-Style Shooter),
Mw2,
CS:S,
Bulletstorm -
stock SpielerSpeichern(playerid)
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/Spieler/%s.txt",pname);
if(fexist(accFormat) && Spieler[playerid][eingeloggt])
{
dini_IntSet(accFormat,"Skin",Spieler[playerid][Skin]);
dini_IntSet(accFormat,"Adminlevel",Spieler[playerid][Adminlevel]);
dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
dini_IntSet(accFormat,"Premium",Spieler[playerid][Premium]);
}
} -
Ungetestet
ocmd:pay(playerid,params[])
{
new pID,money;
if(sscanf(params,"ui",pID,money))return SendClientMessage(playerid,ORANGE,"/pay [ID/Name] [Summe");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online.");
{
new Float:x,Float:y,Float:z;
GetPlayerPos(pID,x,y,z);
if(IsPlayerInRangeOfPoint(playerid,10,x,y,z))
{
new string[128],string2[128];
if(money<1||money>10000)
{
if(GetPlayerMoney(playerid)>=money)
{
GivePlayerMoney(playerid,-money);
format(string,sizeof(string),"Du Gibst %s %i Euro.",SpielerName(pID),money);
SendClientMessage(playerid,WEIS,(string));
GivePlayerMoney(pID,money);
format(string2,sizeof(string2),"%s Gibt dir %i Euro.",SpielerName(playerid),money);
SendClientMessage(pID,WEIS,(string2));
}
else
{
SendClientMessage(playerid,ROT,"Soviel Geld hast du garnicht!");
}
}
else
{
SendClientMessage(playerid,ROT,"Du kannst höchstens 10000$ geben!");
}
}
else
{
SendClientMessage(playerid,Rot,"Der Spieler ist nicht in deiner Nähe!");
}
return 1;
}
} -
ocmd:pay(playerid,params[])
{
new pID,money;
if(sscanf(params,"ui",pID,money))return SendClientMessage(playerid,ORANGE,"/pay [ID/Name] [Summe");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,ROT,"Der Spieler ist nicht online.");
{
new string[128],string2[128];
if(money<1||money>10000)
{
if(GetPlayerMoney(playerid)>=money)
{
GivePlayerMoney(playerid,-money);
format(string,sizeof(string),"Du Gibst %s %i Euro.",SpielerName(pID),money);
SendClientMessage(playerid,WEIS,(string));
GivePlayerMoney(pID,money);
format(string2,sizeof(string2),"%s Gibt dir %i Euro.",SpielerName(playerid),money);
SendClientMessage(pID,WEIS,(string2));
}
else
{
SendClientMessage(playerid,ROT,"Soviel Geld hast du garnicht!");
}
}
else
{
SendClientMessage(playerid,ROT,"Du kannst höchstens 10000$ geben!");
}
return 1;
}
}Ungetestet
-
forward AdminCarUnSpawn(vehicleid);new IsVehicleAdmin[MAX_VEHICLES];
new AdminTimer[MAX_VEHICLES];public OnPlayerExitVehicle(playerid, vehicleid)
{
if(IsVehicleAdmin[vehicleid]==1)
{
AdminTimer[vehicleid]=SetTimerEx("AdminCarUnSpawn", 1000*60*1, false,"i", vehicleid);
}
return 1;
}if(dialogid == Dialog_adminpanelveh)
{
new vehicleid=strval(inputtext);
new vehcid;
new Float:x,Float:y,Float:z;
new string[256];
GetPlayerPos(playerid,x,y,z);
vehcid=CreateVehicle(vehicleid,x,y,z,1.00,1,1,300);
PutPlayerInVehicle(playerid,vehcid,0);
format(string,sizeof(string),"Du hast ein Vehicle mit der ID %i gespawnt!",vehicleid);
SendClientMessage(playerid,Gruen,string);
SendClientMessage(playerid,Grau,"Du darfst das Fahrzeug nicht für den Privaten Gebrauch benutzen !");
SendClientMessage(playerid,Grau,"Der erste Verstoß bringt einen Admin-Warn , der zweite einen Kick!");
printf("%s spawnt ein Vehicle mit der ID %i",PlayerName(playerid),vehicleid);
IsVehicleAdmin[vehicleid]=1;
}
public AdminCarUnSpawn(vehicleid)
{
DestroyVehicle(IsVehicleAdmin[vehicleid]);
IsVehicleAdmin[vehicleid]=0;
}Geht nicht :\
-
Hey
Wie kann ich machen , dass wenn man von einem gespawnten Fahrzeug (Admincar) absteigt , dass es nach 5 Minuten gelöscht wird ?
Ich habs jetzt so:if(dialogid == Dialog_adminpanelveh)
{
new vehicleid=strval(inputtext);
new vehcid;
new Float:x,Float:y,Float:z;
new string[256];
GetPlayerPos(playerid,x,y,z);
vehcid=CreateVehicle(vehicleid,x,y,z,1.00,1,1,300);
PutPlayerInVehicle(playerid,vehcid,0);
format(string,sizeof(string),"Du hast ein Vehicle mit der ID %i gespawnt!",vehicleid);
SendClientMessage(playerid,Gruen,string);
SendClientMessage(playerid,Grau,"Du darfst das Fahrzeug nicht für den Privaten Gebrauch benutzen !");
SendClientMessage(playerid,Grau,"Der erste Verstoß bringt einen Admin-Warn , der zweite einen Kick!");
printf("%s spawnt ein Vehicle mit der ID %i",PlayerName(playerid),vehicleid);
} -
Okay , das mit dem Kicken hätte ich
Wie kann ich das mit den Waffen machen ?
Sprich erst ein Dialog mit der ID , dann einer mit der WaffenID und dann einer mit der Munition ?
-
Hey
Bin grade an einem Ingame-Controllpanel für Admins.
Undzwar möchte ich gerne wissen , wie ich ID's "übernehmen" kann.zB wenn ein Admin Kicken auswählt , soll ein neuer Dialog angezeigt werden , wo der Admin die ID/den Namen eingeben muss , danach wird noch ein neuer Dialog angezeigt , wo er den Grund angeben muss , dann wird der angegebene Spieler mit dem angegebenen Grund gekickt.
Oder bei einem Teleport befehl , dass wenn man Teleportieren auswählt , ein neuer Dialog erscheint , wo man die ID/den Namen angeben muss , zu dem man dann teleportiert wird!
Wie geht das ? -
Hast du auch SetTimerEx bei OnPlayerEnterVehicle ?
-
Etwas genauer ?
-
Was geht nicht?
-
Ist bei mir auch die ganze Zeit ._.
Ich schiesse 5x auf ein Huhn und es stirbt nicht , obwohl ich Munition habe
-
hmm poste doch einfach das womit du Probleme hast
keiner Springt jetzt direkt auf und macht direkt alles via TV
daraus lernt man nicht
Ist mir schon klar , aber ich möchte ungern mein ganzes Biz-System hier preisgeben.
Wenns unbedingt sein muss , poste ich es hier
Da sogut wie alles verbuggt istE: 1. Problem ist oben drin!
-
Hey !
Ich bräuchte Hilfe bei meinem Biz System!
Ich kann nur 1 erstellen und die Commands sind verbuggt!
TV / Hamachi Daten gibts per PN
So nun zu meinen Problemen.
Wenn ich ein Biz erstelle, wird der Pickup/3D Text nicht erstellt ,
aber das printf wird in der Konsole ausgegeben und die Datei erstellt!
stock CreateBizz(Float:x,Float:y,Float:z,namme[64],besitzer[64],preis) //Also X,Y,Z weiss jeder,Besitzer ist "Keiner",Preis, der preis, level das level, int(ganz wichtig DIE Nummer nicht das interior(Die Nummer)) und dann halt noch World
{
new Biz[64];
for(new b = 1; b < BIZ_FILES; b++)
{
format(Biz,64,"/Biz/biz%d.txt",b);
if(!dini_Exists(Biz)) //wenn die Datei nicht existiert
{
dini_Create(Biz);
dini_FloatSet(Biz,"PosX",x); //Hier wird das alles nur noch gesetzt
dini_FloatSet(Biz,"PosY",y);
dini_FloatSet(Biz,"PosZ",z);
dini_Set(Biz,"Name",namme);
dini_IntSet(Biz,"Preis",preis);
dini_IntSet(Biz,"Besetzt",0);
dini_Set(Biz,"Besitzer",besitzer);
dini_IntSet(Biz,"Bizkasse",0);
return LoadBizz(b);
}
}
return 1;
}ocmd:createbiz(playerid,params[])
{
new Float:x,Float:y,Float:z,preis;
new namme[64];
if(sscanf(params,"s[64]d",namme,preis))return SendClientMessage(playerid,Rot,"Fehler: /createbiz [Name] [Preis]");
{
GetPlayerPos(playerid,x,y,z);
CreateBizz(x,y,z,namme,"Staat",preis); //Hier wird das Biz erstellt mithilfe des stock`s
}return 1;
}stock LoadBizz(bizid)
{
for(new b = 1; b <BIZ_FILES; b++)
{
new Biz[64];
format(Biz,sizeof(Biz),"Biz/biz%d.txt",b);
if(dini_Exists(Biz))
{
bInfo[bizid][PossX] = dini_Float(Biz,"PosX"); //Float X speichern
bInfo[bizid][PossY] = dini_Float(Biz,"PosY"); //Float Y speichern
bInfo[bizid][PossZ] = dini_Float(Biz,"PosZ"); //Float Z speichern
bInfo[bizid][Bizkasse] = dini_Int(Biz,"Bizkasse");
format(bInfo[bizid][Namme],64,"%s",dini_Get(Biz,"Name"));
bInfo[bizid][Preis] = dini_Int(Biz,"Preis"); // Preis / kauf kosten speichern
bInfo[bizid][Besetzt] = dini_Int(Biz,"Besetzt"); // Ob das Bizz besetzt ist
format(bInfo[bizid][Besitzer],64,"%s",dini_Get(Biz,"Besitzer")); //Besitzername Speichern
if(bInfo[bizid][Besetzt] == 0) //wenn das Bizz nicht Besetzt ist
{
bInfo[bizid][Pickup] = CreatePickup(1238 ,23,bInfo[bizid][PossX],bInfo[bizid][PossY],bInfo[bizid][PossZ],0); //Pickup erstellennew string[196];
format(string,196,"*[BIZINFO]*\nName: %s\nBesitzer: Staat\nPreis: %i\n***",bInfo[bizid][Namme],bInfo[bizid][Preis]); //Hier wird der string für Den 3DTextLabel geschrieben was alles drin sein soll, wenn das Bizz frei ist
bInfo[bizid][Label] = Create3DTextLabel(string,0xFFFF00FF,bInfo[bizid][PossX],bInfo[bizid][PossY],bInfo[bizid][PossZ],20,0,0); //Hier wird der 3DText erstellt
return print("Das Biz wurde erfolgreich geladen"); //Das schreibt in die Konsole
}
if(bInfo[bizid][Besetzt] == 1) //wenn das Biz besetzt ist
{
bInfo[bizid][Pickup] = CreatePickup(1238 ,23,bInfo[bizid][PossX],bInfo[bizid][PossY],bInfo[bizid][PossZ],0); //Pickup erstellen
new string[196];
format(string,196,"*[BIZINFO]*\nName: %s\nBesitzer: %s\n***",bInfo[bizid][Namme],bInfo[bizid][Besitzer]); //Hier wird der string für Den 3DTextLabel geschrieben was alles drin sein soll, wenn das Bizz frei ist
bInfo[bizid][Label] = Create3DTextLabel(string,0xFFFF00FF,bInfo[bizid][PossX],bInfo[bizid][PossY],bInfo[bizid][PossZ],20,0,0); //Hier wird der 3DText erstellt
return print("Das Biz wurde erfolgreich geladen"); //Das schreibt in die Konsole
}
}//wenn die Datei existiert, sonst return 0;
else
{
return 0;
}
}
return 1;
} -
GangZoneCreate(1137.9740, -1582.1107,1042.9264,-1702.8679); ?
-
Den Timer startest du , wenn er in ein Taxi-Auto einsteigt!
public taxitimer(playerid)
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(GetPlayerVehicleID(i)==GetPlayerVehicleID(playerid))
{
if(GetPlayerVehicleSeat(i)==0)
{
GivePlayerMoney(i,50);
GivePlayerMoney(playerid,-50);
}
}
}
}Wie gesagt , ich weiß nicht, ob es richtig ist!
-
Zitat
hää ich hatte keinen 2 Thread
Meine Idee wäre(Weiß nicht ob es klappt!):
eine neue for schleife im Timer , die alle Spieler durchgeht.
Dann fragst du ab , ob ein SPieler im gleichen Fahrzeug ist wie Playerid , wenn ja , fragst du ab ob der Spieler auf dem Sitz 0 ist , wenn ja , gibst du ihm Geld , wenn nein , machst du garnichts. -
1 Thread reicht ?