Ah stimmt , die Möglichkeit mit Dialogen hab ich vergessen
Ist zwar mit dieser Skinauswahl besser , aber mit Dialog kann man ja auch einen "Preview" einbauen
Danke
Ah stimmt , die Möglichkeit mit Dialogen hab ich vergessen
Ist zwar mit dieser Skinauswahl besser , aber mit Dialog kann man ja auch einen "Preview" einbauen
Danke
Danke schonmal für die Mühe , aber den Teil hätte ich eigentlich selber gekonnt
Meine Frage war , wie ich Random Positionen machen kann , halt dass wenn er den Job 1x macht , Haus 1 , 5 und 2 rankommen , wenn er ihn zum 2. mal macht , 2 , 1 und 3 oder so , halt das Abwechslung im Job ist
Alles anzeigenICh würde es einfach in einer Normalen skinauswahl machen nachdem Er den Invite angenommen hat soll eine Normale Skinauswahl kommen also z.B
Dialog_Invite
Wen er auf beitreten button drückt kommt ne skinauswahl und dadrüber wird halt abgefragt In Welche Fraktion.....
Ist der einfachste weg denke ICh mal xD
So hatte ich es auch eigentlich vor :\
Nur gibts eine bestimmte Funktion , wie zB SpawnPlayer(playerid); , die den Spieler zur Skinauswahl bringt ? Weil bei SpawnPlayer wird doch die Skinauswahl übersprungen und der Spieler wird direkt gespawnt ?
Hey
Hab mal wieder ne Frage , undzwar wie kann ich machen , das nach dem /invite oder /makeleader befehl , eine Skinauswahl für den Spieler kommt , wo der Spieler einen Skin seiner Fraktion auswählen kann ? zB. wenn er in Terror eingeladen wurde , das er nur Terror skins auswählen kann!
Bisher:
ocmd:invite(playerid,params[])
{
if(GetPlayerFrakRang(playerid,4))
{
new pID;
new Spieler[64];
new Spieler2[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(pID));
format(Spieler2,sizeof(Spieler2),"Spieler/%s.txt",PlayerName(playerid));
if(sscanf(params,"u",pID))return SendClientMessage(playerid,Rot,"Fehler: /invite [ID/Name]");
{
if(dini_Int(Spieler,"Fraktion")!=dini_Int(Spieler2,"Fraktion"))return SendClientMessage(playerid,Rot,"Der Spieler ist momentan in einer Fraktion!");
{
dini_IntSet(Spieler,"Fraktion",dini_Int(Spieler2,"Fraktion"));
dini_IntSet(Spieler,"Fraktionsrang",1);
new string[256];
new string2[256];
format(string,sizeof(string),"Du hast %s in die Fraktion eingeladen!",PlayerName(pID));
format(string2,sizeof(string2),"Du wurdest von %s in die Fraktion eingeladen !",PlayerName(playerid));
SendClientMessage(pID,Gruen,string);
SendClientMessage(playerid,Gruen,string2);
new Float:x,Float:y,Float:z;
GetPlayerPos(pID,x,y,z);
SetSpawnInfo(pID,0,0,x,y,z,0.0,0,0,0,0,0,0);
SpawnPlayer(pID);
}
}
}
return 1;
}
ocmd:makeleader(playerid,params[])
{
new pID;
new frak;
new Spieler[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(pID));
if(IsPlayerAnAdmin(playerid,3))
{
if(sscanf(params,"ui",pID,frak))return SendClientMessage(playerid,Rot,"Fehler: /makeleader [ID/Name] [FraktionsID] \nFraktionsID's: 1 - Terror | 2 - San News | 3 Terror");
{
//SendClientMessage(playerid,Rot,"FraktionsID's: 1 - Terror | 2 - San News | 3 Terror");
if(pID == INVALID_PLAYER_ID)return SendClientMessage(playerid,Rot,"Der Spieler exisitert nicht !");
{
if(dini_Int(Spieler,"Fraktion")!=0)return SendClientMessage(playerid,Rot,"Der Spieler ist bereits in einer Fraktion.");
{
if(dini_Int(Spieler,"Fraktion")==frak && dini_Int(Spieler,"Fraktionsrang")>=4)return SendClientMessage(playerid,Rot,"Der Spieler ist bereits Leader der Fraktion!");
{
dini_IntSet(Spieler,"Fraktionsrang",5);
dini_IntSet(Spieler,"Fraktion",frak);
new string[256];
new string2[256];
format(string,sizeof(string),"Du hast %s zu dem Leader der Fraktion %i gemacht !",PlayerName(pID),frak);
format(string2,sizeof(string2),"Du wurdest von %s zu dem Leader der Fraktion %i gemacht !",PlayerName(playerid),frak);
SendClientMessage(playerid,Gruen,string);
SendClientMessage(pID,Gruen,string2);
SpielerSpeichern(pID);
SetSpawnInfo(pID,0,220,548.3002,2593.3633,53.7338,269.8591,0,0,0,0,0,0);
SpawnPlayer(pID);
}
}
}
}
}
else
{
SendClientMessage(playerid,Rot,"Du bist nicht befugt diesen Befehl zu benutzen.");
return 1;
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
new Spieler[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
//SetSpawnInfo(playerid,0,dini_Int(Spieler,"Skin"),dini_Float(Spieler,"X"),dini_Float(Spieler,"Y"),dini_Float(Spieler,"Z"),0.00,0,0,0,0,0,0);
//SpawnPlayer(playerid);
SetPlayerPos(playerid, 713.7261,-828.0383,70.3212);
SetPlayerCameraPos(playerid, 710.1870,-824.2833,70.2593);
SetPlayerCameraLookAt(playerid, 713.7261,-828.0383,70.3212);
SetPlayerFacingAngle(playerid,43.3039);
return 1;
}
OnGameModInit
if(IsPlayerInFraktion(playerid,0))
{
AddPlayerClass(137,713.7261,-828.0383,70.3212,43.3039,0,0,0,0,0,0);
}
if(IsPlayerInFraktion(playerid,1))//TERROR
{
AddPlayerClass(220,713.7261,-828.0383,70.3212,43.3039,18,10,0,0,0,0);
AddPlayerClass(182,713.7261,-828.0383,70.3212,43.3039,18,10,0,0,0,0);
}
if(IsPlayerInFraktion(playerid,2))//SAN NEWS
{
AddPlayerClass(150,713.7261,-828.0383,70.3212,43.3039,43,25,0,0,0,0);
AddPlayerClass(17,713.7261,-828.0383,70.3212,43.3039,43,25,0,0,0,0);
AddPlayerClass(141,713.7261,-828.0383,70.3212,43.3039,43,25,0,0,0,0);
AddPlayerClass(147,713.7261,-828.0383,70.3212,43.3039,43,25,0,0,0,0);
AddPlayerClass(148,713.7261,-828.0383,70.3212,43.3039,43,25,0,0,0,0);
AddPlayerClass(187,713.7261,-828.0383,70.3212,43.3039,43,25,0,0,0,0);
}
if(IsPlayerInFraktion(playerid,3))
{
AddPlayerClass(285,713.7261,-828.0383,70.3212,43.3039,27,50,32,120,24,50);
}
Jop , habs gestern schon gemerkt und ausgebessert , hier im forum allerdings vergessen
Es ist manchmal aber auch , dass wenn man stirbt, nach ~5 Sekunden an seinem todespunkt respawnt wird , und nach 30 sekuinden dann erst die Abfrage per Dialog kommt :O
Hey
Ich möchte gerne n Schlüsseldienst Minijob machen , wo wenn man /schlüsseldienst eingibt , 3 random positionen ausgewählt werden , wo dann halt checkpoints sind :<
Also ich habe 5 Positionen , und es sollen random 3 ausgewählt werden , und checkpoints erstellt werden !
Was habe ich bereits:
-Die Posis
-Den "new" code
new Float:schluesseldienstorte[5][3] = {
{1906.0430,-1112.9438,26.6641},
{2067.9656,-1731.4332,13.4887},
{295.2440,-1764.6034,4.2865},
{1142.4746,-1093.3439,27.7645},
{743.3919,-510.1198,17.5902}
};
Ich hatte Sonntag auch Konfirmation , hab mir n neues Skateboard und n Paar Schuhe gekauft , und den Rest aufs Konto gepackt.
Also , kauf dir was kleines und pack den Rest aufs Konto
Attach3DTextLabelToVehicle("avsign", vehid, 0.0, 0.0, 2.0);
Gehts so ?
Thread überarbeitet !
TV/Hamachi Daten per PN
Hey !
Mein ganzes Script funktioniert nicht richtig :\
Problem 1: Makeleader
Problem 2: Spawns
Problem 3: Speichern
Problem 4: /Verbrecher
Problem 5: Krankenhaus
Hey
Ich möchte , das wenn der Spieler stirbt , seine Todeskoordinaten gespeichert werden , und später wieder ausgelesen werden.
Ich habs jetzt so , aber es funzt net :\
public OnPlayerDeath(playerid, killerid, reason)
new Spieler[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
dini_FloatSet(Spieler,"TotX",x);
dini_FloatSet(Spieler,"TotY",y);
dini_FloatSet(Spieler,"TotZ",z);
if(dialogid==Dialog_todesfrage)
{
new Spieler[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
if(response==1)
{
SetPlayerPos(playerid, dini_Float(Spieler,"TodesX"),dini_Float(Spieler,"TodesY"),dini_Float(Spieler,"TodesZ"));
SetPlayerHealth(playerid,100);
GivePlayerMoney(playerid, -2000);
SendClientMessage(playerid,Weiss,"|____ Krankenhaus ____|");
SendClientMessage(playerid,Weiss,"Du wurdest von den Sanitätern zu deinem Unfalls-");
SendClientMessage(playerid,Weiss,"ort gebracht.");
SendClientMessage(playerid,Weiss,"Kosten der Behandlung: 500$");
SendClientMessage(playerid,Weiss,"Kosten des Transports: 1500$");
SendClientMessage(playerid,Weiss,"|_____________________|");
}
if(response==0)
{
SetPlayerPos(playerid,1182.5331,-1324.3885,13.5793);
SetPlayerFacingAngle(playerid,270.8170);
SetCameraBehindPlayer(playerid);
SetPlayerHealth(playerid,100);
GivePlayerMoney(playerid, -500);
SendClientMessage(playerid,Weiss,"|____ Krankenhaus ____|");
SendClientMessage(playerid,Weiss,"Du wurdest entlassen.");
SendClientMessage(playerid,Weiss,"Kosten der Behandlung 500$");
SendClientMessage(playerid,Weiss,"|_____________________|");
}
}
Ich habs grade auch versucht , bei mir kommt zwar kein WBB error , aber es passiert nichts!
Bei mir klappts beim gesamten Code , also bei mir:
C:\Users\xSpeciiaL\Desktop\0.3e RC 6 fix\gamemodes\ScriptV0.1.pwn(2251) : error 033: array must be indexed (variable "inputtext")
FIXXED !
#Closerequest
Ich finde , sie sehen gut aus , nur man erkennt die Schrift schlecht/garnicht :\
Jop
Enumfelder , bzw die Variablen drunter versteh ich ja noch , aber zB wie das alles funzt
Wenn bspsweise das Adminlevel haben will , mache ich einfach dini_Int(Spieler,"Adminlevel"); , mit Enum iwas mit sSpieler[playerid][Adminlevel] , und das gleiche bei Speichern :< Mich verwirren Enums
Hey
Diesmal ist mein Problem , das der Spieler nur 1€ pro Payday bekommt !
Er soll standartmäßig 3.000€ bekommen , und einen Levelbonus dazu !
Levelbonus:
LevelDesSpielers*300€ , beispiel:
Spieler ist Level 3 , also bekommt er 900€ Levelbonus!
public pimer(playerid)
{
pPlaytime[playerid]++; // ++ ist wie +1 also wird es alle 60000 milliskunden um 1 erhöht soll die Spielzeit sein
if(pSincePayday[playerid] >= 2) // wenn Zeitseitpayday 60 oder über 6o ist wird das in der Klammer ausgelöst
{
new Spieler[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
new levelbonus;
//levelbonus=GetPlayerScore(playerid);
// ZeitseitPayday wird wieder auf 0 gesetzt da er den Payday hatte.
//GivePlayerMoney(playerid, 3000); // der ID "Playerid" werden 2000$ gegeben
dini_IntSet(Spieler,"Levelpunkte",dini_Int(Spieler,"Levelpunkte")+1);
new string[256];
format(string,sizeof(string),"Du hast %i von %i Levelpunkten!",dini_Int(Spieler,"Levelpunkte"),GetPlayerScore(playerid));
if(dini_Int(Spieler,"Levelpunkte")>=dini_Int(Spieler,"Level"))
{
dini_IntSet(Spieler,"Levelpunkte",0);
SetPlayerScore(playerid,dini_Int(Spieler,"Level")+1);
dini_IntSet(Spieler,"Level",GetPlayerScore(playerid));
SendClientMessage(playerid,Orange,"~Payday~");
SendClientMessage(playerid,Gelb,"Du bist ein Level aufgestiegen!");
SendClientMessage(playerid,Gelb,string);
levelbonus=GetPlayerScore(playerid);
new pdaymoney = levelbonus*300;
pdaymoney+=3000;
pdaymoney=GivePlayerMoney(playerid, pdaymoney);
new string2[256];
format(string2,sizeof(string2),"Du hast %d$ erhalten!",pdaymoney);
SendClientMessage(playerid,Gelb,string2);
pSincePayday[playerid] = 0;
}
else
{
SendClientMessage(playerid,Orange,"~Payday~");
SendClientMessage(playerid,Gelb,string);
levelbonus=GetPlayerScore(playerid);
new pdaymoney = levelbonus*300;
pdaymoney+=3000;
pdaymoney=GivePlayerMoney(playerid, pdaymoney);
new string2[256];
format(string2,sizeof(string2),"Du hast %d$ erhalten!",pdaymoney);
SendClientMessage(playerid,Gelb,string2);
pSincePayday[playerid] = 0;
}
}
else
{
pSincePayday[playerid]++; // ZEit seit Payday wird um 1 erhöht
}
return 1;
}
Wieviel bekommt man denn sonst ?
Vllt mal den Random(100) ändern
new rand2 = 50 + random(100);
if(GetPlayerMoney(opfer) < rand2)
{
PlayerMoney[playerid] = PlayerMoney[playerid]+ rand2;
PlayerMoney[opfer] = PlayerMoney[opfer]- rand2;
format(string, sizeof(string), "*Du hast %s bestohlen und hast ihm %d$ Geklaut.",giveplayer, rand2);
SendClientMessage(playerid, TEAM_AZTECAS_COLOR, string);
}