habe eine frage
also wie brauche hilfe ich möchte das wen man zb in ein pickup läuft ein dialog kommt wo ich mir ein skin aussuchen kan wie mache ich sowas ?
habe eine frage
also wie brauche hilfe ich möchte das wen man zb in ein pickup läuft ein dialog kommt wo ich mir ein skin aussuchen kan wie mache ich sowas ?
IsPlayerPickupPickup
okey aber wie mache ich den befehl und den dialog ?
pickup erstellen
wenn er es aufnommt, wird das Callback OnPlayerPickupPickup aufgerufen, da die Pickupid abfragen, wenn die passend ist, ShowPlayerDialog, und dort dann halt den Gewünschten Inhalt
das ganz oben
new test;
#define test;
bei ongamemodeinit das erin:
test=CreatePickup(1239,1,X ,Y ,Z);
bei OnPlayerPickup das rein
if(pickupid==test)
{
ShowPlayerDialog(playerid,test, DIALOG_STYLE_LIST,"skins","pipapo","Waelen","Abbrechen");
}
und wie geht der befehl also das ich skinns auswählen kann ?
das musst du bei OnDialog switchen lassen was er angeklickt hat aber dafür findest du unter den Tutorialbereich eine erklärung wie du die Dialoge richtig verwendest
//edit
fail der dialog kommt von allein
achso also mit case
case1
usw ?
ja genau und in den dialog das von den pickup aufgerufen wird musst du dann so machen
Skin 1\nSkin 2\nSkin 3....
skin 1 == case 0
Skin 2 == case 1
Skin 3 == case 3
....
das \n ist in den fall das enter
#define test;
??? Wenn man kein Plan hat einfach nichts schreiben bitte.
Du musst den Pickup nicht definieren in dem Sinne.
Oben mit einem New.
Dann bei Ongamemodeinit mitteilen was diese Variable ist.
Bei OnPlayerPickupPickup abfragen:
if(pickupid == deinpickupname)
{
ShowPlayerDialog(playerid,Dialogname,DIALOG_STYLE_.., "capture","text","response 1", "response 0");
}
Zitatdas \n ist in den fall das enter
Das ist der Backslash Operator der einen Zeilenumbruch verursacht, um es besser auszudrücken.
??? Wenn man kein Plan hat einfach nichts schreiben bitte.
wenn du dir mal anschaust wo das diealog aufgerufen wird, wirst du bemerkenn, das ich den dialog TEST genannt habe
und dialoge sollte man definieren da sonst errors auftreten
Dann sollte man den definierten Dialog auch so kennzeichnen, das man als Noob erkennt, das es sich um einen Dialog handelt.
z.B. #define Dialog_Test 0
Die ID hast du ja auch vergessen.
Kann mir pls wer helfen ?
//oben im Script
#define Dialog_Skins 500
new skinpickup;
//ongamemodeinit
skinpickup = CreatePickup(Model,Typ,X,Y,Z);
//OnPlayerPickupPickup
if(pickupid == skinpickup)
{
ShowPlayerDialog(playerid,Dialog_Skins,DIALOG_STYLE_LIST,"Skinauswahl","Skin1\nSkin2\nSkin3\nSkin4","Nehmen","Abbrechen");
}
und wie mache also wie füge ich die skin ein ?
möchte wissen wie ich das in onplayerpickup mache
Sag mir mal, welche Skins du rein machen willst, also wie sie heißen sollen und die ID dazu!
Und ob sie was kosten sollen und wenn ja wieviel.
Dann mach ich dir das alles ebend.
nix kosten
Skin namen
Zivil.187
Dienst Uniform. 277
BrandSchutz.278
Cheff uniform.279
//oben im Script
#define Dialog_Skins 500
new skinpickup;
//ongamemodeinit
skinpickup = CreatePickup(Model,Typ,X,Y,Z);
//OnPlayerPickupPickup
if(pickupid == skinpickup)
{
ShowPlayerDialog(playerid,Dialog_Skins,DIALOG_STYLE_LIST,"Skinauswahl","Zivil\nDienstuniform\nBrandschutzkleidung\nCheff Uniform","Nehmen","Abbrechen");
}
//OnDialogResponse
if(dialogid == Dialog_Skins)
{
if(response == 1)
{
switch(listitem)
{
case 0:
{
SetPlayerSkin(playerid, 187);
}
case 1:
{
SetPlayerSkin(playerid, 277);
}
case 2:
{
SetPlayerSkin(playerid, 278);
}
case 3:
{
SetPlayerSkin(playerid, 279);
}
}
}
}