Das Hab ich bereits gemacht das Dialog wird Ordnungsgemäß ausgeführt
Dialog wird geöffnet!
Pack mal ne 2 in den type des Pickups.
Beispiel:
Das Hab ich bereits gemacht das Dialog wird Ordnungsgemäß ausgeführt
Dialog wird geöffnet!
Pack mal ne 2 in den type des Pickups.
Beispiel:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 9992)
{
if(response)
{
printf("Dialog wird geöffnet!");
if(listitem==0)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
healpickup = CreatePickup(1240, 0, x, y, z, -1);
}
if(listitem==1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
deaglepickup = CreatePickup(348, 0, x, y, z, -1);
}
if(listitem==2)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
spawnpickup = CreatePickup(1272, 0, x, y, z, -1);
}
if(listitem==3)
{
DestroyPickup(healpickup);
}
if(listitem==4)
{
DestroyPickup(deaglepickup);
}
if(listitem==5)
{
DestroyPickup(spawnpickup);
}
}
}
}
Alles anzeigen
Einmal einbauen und den Befehl ausführen.
Anschließend uns die Serverlog senden.
//edit
Setz mal den Type der Pickup's auf 2.
Also CreatePickup(1272, 2, x.......etc);
und
hinzugefügt.
Ganzer Code:
new healpickup,spawnpickup,deaglepickup;
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp(cmdtext, "/createpickup", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] >= 3)
{
ShowPlayerDialog(playerid, 9992, DIALOG_STYLE_LIST, "Pickups", "Healpickup\nDeaglepickup\nSpawnpickup\nHealpickup Entfernen\nDeaglepickup Entfernen\nSpawnpickup Entfernen", "Auswählen", "Abbrechen");
}
}
return 1;
}
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == healpickup)
{
SetPlayerHealth(playerid, 100);
}
if(pickupid == spawnpickup)
{
SetPlayerSpawn(playerid);
}
if(pickupid == deaglepickup)
{
GivePlayerWeapon(playerid, 24, 500);
}
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 9992)
{
if(response)
{
if(listitem==0)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
healpickup = CreatePickup(1240, 0, x, y, z, -1);
}
if(listitem==1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
deaglepickup = CreatePickup(348, 0, x, y, z, -1);
}
if(listitem==2)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
spawnpickup = CreatePickup(1272, 0, x, y, z, -1);
}
if(listitem==3)
{
DestroyPickup(healpickup);
}
if(listitem==4)
{
DestroyPickup(deaglepickup);
}
if(listitem==5)
{
DestroyPickup(spawnpickup);
}
}
}
}
Alles anzeigen
PS: return'n nicht vergessen
Dein Code ist fehlerhaft.
So:
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == healpickup)
{
SetPlayerHealth(playerid, 100);
}
if(pickupid == spawnpickup)
{
SetPlayerSpawn(playerid);
}
if(pickupid == deaglepickup)
{
GivePlayerWeapon(playerid, 24, 500);
}
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 9992)
{
if(response)
{
if(listitem==0)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
healpickup = CreatePickup(1240, 0, x, y, z, -1);
}
if(listitem==1)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
deaglepickup = CreatePickup(348, 0, x, y, z, -1);
}
if(listitem==2)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
spawnpickup = CreatePickup(1272, 0, x, y, z, -1);
}
if(listitem==3)
{
DestroyPickup(healpickup);
}
if(listitem==4)
{
DestroyPickup(deaglepickup);
}
if(listitem==5)
{
DestroyPickup(spawnpickup);
}
}
}
}
Alles anzeigen
Sieht sehr schön aus.
Hat für mich nur irgendwie nicht das Feeling von einen LSPD.
Eher einer Wohnung. (Frag nicht warum ich kann es dir nicht beantworten)
Yo,
ist mir auch aufgefallen
Hab versucht bisschen blau rein zu klatschen
Danke für deine Kritik
oh Fail xD
Das war eine Aussage
Mein Pc läuft auf Windows habe aber alle Plugins für Linux Auch gedownloadet und hochgeladen.
Keine errors im Log
Guck mal nach ob die Plugins geladen werden.
Yo,
ich hatte damals ein kleines LSPD Interior als zukünftige Bewerbung für einen Server gemappt.
Nun verging mir das Interesse an dem Server und ich veröffentliche euch meine Map.
Ich sollte dazu sagen, dass ich oldschool Mapper bin und keine Texturen benutze & nicht vor habe,
diese eines Tages zu benutzen.
Bilder:
Anzahl der Objekte: 171
Mapdauer: ca 2 Tage (brauche sehr lange Pausen um wieder einen klaren Kopf zu bekommen)
Ich hab darauf geachtet, dass alles genau & passend gemappt ist.
Außerdem sollten keine Bugs vorhanden sein (beispielsweise das die Wand in einer anderen buggt etc).
Viel Spaß damit!
Wenn ich das Script auf mein Pc abspiele geht es ?
War das eine Frage oder eine Aussage?
Läuft der Server auf Linux?
Wenn ja: Bedenke, dass Linux ".so Files" benutzt anstatt von ".dll Files".
Sorge dafür, dass alle Plugins für Linux hergerichtet sind.
Wenn dies bereit getan wurde, dann lass dies uns wissen.
Sind Fehler im Log zusehen?
Alles anzeigenHallo Liebe Breadfish Community ,
Ich habe ein Problem mit meinem PRP Script undzwar das ich nach einem Relog
immer ein CJ Skin habe mit einem Bandana hab schon in einigen Foren geguckt
aber nichts gefunden was mir weiter helfen könnte deswegen weiß vllt einer von euch eine Lösung
für das Problem. In der Datenbank wird der normale Skin wie auch der Fraktions Skin mit der ID 0
gespeichert das habe ich festgestellt.
Mit freundlichen Grüßen
FeelFresh.
Ohne Code geht nichts.
OnPlayerDisconnect & OnPlayerSpawn wären nützlich.
Mach A1 und kauf dir was richtiges
Meine Empfehlung.
Alles anzeigenHey, ich habe in einem Timer eine menge spielerbezogene Funktionen, da es ein Timer ist, habe ich eine Schleife eingebunden.
Jetzt habe ich das Problem: Die Schleife arbeitet unabhängig vom Timer.
Beispiel:
Die Schleife (obwohl nur 1 Spieler aufm Server ist) wird ca. 20x die Sekunde abgerufen, obwohl der Timer auf 1 Sekunde liegt.
Wie ändere ich das?
Timer:
ongamemodeinit
SetTimer("SecTimer", 1000, 1);
CodeAlles anzeigenforward SecTimer(); public SecTimer() { new uhour, umin, usecs; gettime(uhour, umin, usecs); for (new i=0; i < MAX_PLAYERS; i++) { printf("%02d %d02 %02d Test 2", uhour, umin, usecs); if(PlayerInfo[i][pLoggedIn] == false) continue; new vw = GetPlayerVirtualWorld(i); new Float:HP; new Float:X, Float:Y, Float:Z; GetPlayerPos(i, X, Y, Z); GetPlayerHealth(i, HP); if(HP <= 14.000) { if(IsPlayerConnected(i)) { if(PlayerInfo[i][pLoggedIn] == true) { if(IsInjured[i] == false) { IsInjured[i] = true; InjuredTimer[i] = 240; Invulnerable[i] = true; InvulCounter[i] = 3; new dstr[528]; format(dstr, sizeof (dstr), "%s ist schwer verletzt und braucht einen Sanitäter! /Medic %d", PlayerInfo[i][pName], i); MedicMessage("|__________________________Achtung_________________________|"); MedicMessage(dstr); MedicMessage("|__________________________________________________________|"); new string[128]; format(string, sizeof(string), "(( %s ist verletzt und liegt am Boden.\nEr braucht einen Krankenwagen! ))", PlayerInfo[i][pName]); InjuredLabel[i] = Create3DTextLabel(string, 0xFF6666FF, X, Y, Z, 25.00, vw, 1); Attach3DTextLabelToPlayer(InjuredLabel[i], i, 0.00, 0.00, 0.500); ApplyAnimation(i, "PED", "KO_shot_stom", 4.1, 1, 0, 0, 1, 0, 1); notruf[i] = 1; } } } } if(InvulCounter[i] > 0) { InvulCounter[i] -= 1; if(InvulCounter[i] == 0) { Invulnerable[i] = false; } } if(InjuredTimer[i] > 0) { if(IsDead[i] == false) { ApplyAnimation(i, "CRACK", "crckdeth2", 4.1, 1, 0, 0, 1, 0, 1); InjuredTimer[i] -= 1; if(InjuredTimer[i] == 0) { ClearAnimations(i); if(IsHealed[i] == false) { SendAction(i, "ist soeben verstorben."); SetPlayerHealth(i, 0); Delete3DTextLabel(InjuredLabel[i]); IsDead[i] = true; IsInjured[i] = false; } } } } if(PlayerInfo[i][pKicked] == 1) { Kick(i); } ResetPlayerMoney(i); GivePlayerMoney(i, PlayerInfo[i][pMoney]); if(PlayerInfo[i][pPrison] <= 0) { PlayerInfo[i][pPaydaySecs] += 1; if(PlayerInfo[i][pPaydaySecs] == 60) { PlayerInfo[i][pPaydayMins] += 1; PlayerInfo[i][pPaydaySecs] = 0; if(PlayerInfo[i][pPaydayMins] == 60) { Payday(i); PlayerInfo[i][pPaydayMins] = 0; } } } SetPlayerTime(i, uhour, umin); if(PlayerInfo[i][pDigCD] > 0) { PlayerInfo[i][pDigCD] -= 1; if(PlayerInfo[i][pDigCD] == 0) { SendClientMessage(i, COLOR_INFO, "** Du kannst wieder Müll durchwühlen!"); } } if(PlayerInfo[i][pKH] > 0) { PlayerInfo[i][pKH] -= 1; if(PlayerInfo[i][pKH] == 0) { SpawnPlayer(i); UnfreezePlayer(i); PlayerInfo[i][pMoney] -= 500; GivePlayerMoney(i, -500); SendClientMessage(i, COLOR_LIGHT_RED, "Du konntest noch von den Ärtzten gerettet werden... Behandlungskosten: $500"); } } if(PlayerInfo[i][pJail] > 0) { if(PlayerInfo[i][pPrison] == 0 && PlayerInfo[i][pKH] == 0) { PlayerInfo[i][pJail] -= 1; if(PlayerInfo[i][pJail] == 0) { SpawnPlayer(i); } } } if(PlayerInfo[i][pPrison] > 0 && PlayerInfo[i][pKH] == 0) { PlayerInfo[i][pPrison] -= 1; if(PlayerInfo[i][pPrison] == 0) { SpawnPlayer(i); } } RepairVehicle(admincar[i]); SetVehicleHealth(admincar[i], 6000.000); break; } return 1; }
Edit: Es ist nur übertrieben schnell wenn 0 Spieler on sind, wenn 1 Spieler on ist, funktioniert es doch mit1 Sekunde
Hai,
ich empfehlen "SetTimerEx" für Spieler zu benutzen.
Einfach bei "OnPlayerConnect" einfügen.
Anschließend noch
ersetzen.
Da brauchst du die Schleife um alle Spieler auf dem Server auf zu nennen auch nicht mehr.
Beispiel:
forward SecTimer(playerid);
public SecTimer(playerid)
{
SendClientMessage(playerid, FARBE, "Eine weitere Sekunde ist vorbei!");
}
public OnPlayerConnect(playerid)
{
SetTimerEx("SecTimer", 1000, true, "i", playerid);
}
Alles anzeigen
Weiß nicht ob dies dein Problem löst aber ein Versuch ist es wert
Öhhh, bei mir war das damals bei einem Server.
Ich hatte die IP eingespeichert und anschließend die Domain, die auf die IP zuweist.
Eventuell lösch mal alle Server und speicher alle neu ein.
if(strcmp(cmd, "/newbiz", true) == 0) {
if(PlayerInfo[playerid][ALevel] == 1){
SendClientMessage(playerid, COLOR_GREEN, "Supporter sind nur zum supporten da");
return 1;
}
Das hilft uns nicht weiter.
Eventuell den kompletten Teil posten.
Yo,
hab folgendes Problem bei meiner Map:
Das Glas Objekt verschwindet bei bestimmten Blickwinkeln und taucht anschließend wieder auf.
Hab bereits versuch das Objekt auf die andere Seite zu drehen.
Weiß jemand wieso das so buggt?
Ich hab das Objekt woanders benutzt und dort buggt es nicht.
Btw: ID is 19325
Vielen Dank im Voraus!
Kein Heißkleber. Also wenn du das richtig positioniert und das ordentlich mit Klebeband oder sonstiges befestigt.. denke ich, dass dies funktionieren wird.
Hab damals bei Gopro welche angefordert und nach ca 2 Monaten welche bekommen
Ich nehme am Gewinnspiel teil
Wo liegt mein Fehler ?
Es wird in der Console eine Leere Zeile gepostet.
Aber in dem Label wird er Richtig angezeigt ?
Wenn ich mir Name printen lasse wird der Name auch GeprintetCodeformat(hinfo[i][h_Name],hinfo[i][h_Name],"%s",Name); printf("%s",hinfo[i][h_Name]); hinfo[i][h_x] = x; hinfo[i][h_y] = y; hinfo[i][h_z] = z; hinfo[i][h_preis] = Preis; format(string,sizeof(string),"Name: %s\nKostet: %d$",Name,Preis); hinfo[i][h_text] = Create3DTextLabel(string, WEIß, x, y, z, 20.0, 0, 0);
Meinst du so?
Abfragen, ob der Spieler gegen ein Objekt sprüht mit dieser Sprühdose.
Abfragen, ob der Spieler gegen ein Objekt sprüht mit dieser Sprühdose.
Hab das was gefunden was du eventuell gebrauchen könntest: Klick
new zollstatus;
if(!strcmp(cmdtext, "/zoll"))
{
if(zollstatus == 0)
{
//Dein Zoll System
}
else {
SendClientMessage(playerid, FARBE, "Der Zoll ist gesperrt!");
}
}
if(!strcmp(cmdtext, "/zollsperren"))
{
if(pInfo[playerid][frak] == 1) //Bitte anpassen
{
if(zollstatus == 0)
{
SendClientMessage(playerid, FARBE, "Du hast den Zoll gesperrt!");
zollstatus = 1;
}
else {
SendClientMessage(playerid, FARBE, "Du hast den Zoll entsperrt!");
zollstatus = 0;
}
}
else {
SendClientMessage(playerid, FARBE, "Du bist kein Cop!");
}
}
Alles anzeigen
ungetestet.
Musst das zu deinem Script anpassen