Hallo,
weiß einer von euch wo das Apex DLC von Arma 3 gespeichert wird?
Mit freundlichen Grüßen
malE
Hallo,
weiß einer von euch wo das Apex DLC von Arma 3 gespeichert wird?
Mit freundlichen Grüßen
malE
@[LnD]JustMe.77 Was soll denn floatstr(params) bewirken ?
CMD:sloc(playerid,params[])
{
new Float:pos1, Float:pos2, Float:pos3, int;
if(sscanf(params,"fffd",pos1,pos2,pos3,int)) return SendClientMessage(playerid,-1,"Use: /sloc x y z interiorid");
if(IsPlayerInAnyVehicle(playerid)) {
SetVehiclePos(GetPlayerVehicleID(playerid),pos1,pos2, pos3);
LinkVehicleToInterior(GetPlayerVehicleID(playerid),int);
} else {
SetPlayerPos(playerid,pos1,pos2,pos3);
SetPlayerInterior(playerid,int);
}
return 1;
}
Alles anzeigen
Ich möchte noch mal anmerken, da ich mich
meiner Meinung nach nicht verständlich genug ausgedrückt habe. Solltest du dir das HyperX Cloud 2 kaufen musst du das Headset mit den mitgelieferten Y-Adapter an deinen PC anschließen. Dafür brauchst du wahrscheinlich ein Klinke-Verlängerungskabel. Dadurch hast du dann erst basslastigen Sound. Falls du noch kein Headset gekauft hast, wäre vielleicht dann das HyperX Cloud Pro für 100€ etwas für dich. Dafür brauchst du glaube ich kein Adapter, ist ja ein Stereo Headset.
Falls nun Fragen auftauchen, frag ruhig.
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == D_EVENTCFG)
{
if(!response)return 1; // ggf. entfernen - ich weiß ja nicht wie der code wirklich aussieht.
switch(listitem)
{
case 0: ShowPlayerDialog(playerid, D_HEALTHCFG, DIALOG_STYLE_INPUT, "Event Health", "Please set the Event Health.", "OK", "");
case 1: ShowPlayerDialog(playerid, D_ARMOURCFG, DIALOG_STYLE_INPUT, "Event Armour", "Please set the Event Armour.", "OK", "");
case 2: ShowPlayerDialog(playerid, D_SKINCFG, DIALOG_STYLE_INPUT, "Event Skin", "Please set the Event Skin.", "OK", "");
case 3: ShowPlayerDialog(playerid, D_EVENTHPREGAIN, DIALOG_STYLE_INPUT, "Event HP Regain", "Set an amount of Health the player receive if he kill someone.", "OK", "");
case 4: ShowPlayerDialog(playerid, D_EVENTVEHICLES, DIALOG_STYLE_LIST, "Event Vehicles", "{80FF00}Enable Vehicles\n{FF0000}Disable Vehicles\n\t", "OK", "");
case 5: ShowPlayerDialog(playerid, D_EVENTSTATUS, DIALOG_STYLE_LIST, "Event Status", "{80FF00}Start Event\n{FF0000}Stop Event\n\t", "OK", "");
}
return 1;
}
}
Alles anzeigen
Entferne if(response) { ... }.
Vielleicht wenn du bei der Variable die abgefragt wird i benutzt statt playerid?
Du hast den Schnipsel anscheint geändert, vielleicht liegt es daran.
if(pData[playerid][P_SpawnPeople] == 1) //Prüfen ob der Spieler das Feauture besitzt
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i) || IsPlayerNPC(i))continue; // Logisch
if(pData[i][P_Watching] != false || IsInLobby[i] != false || InDuel[i] != false)continue; //i befindet sich im Spec, in der Lobby oder im Duel
new Float: x, Float: y, Float:z;
GetPlayerPos(i, x, y, z); //Position vom Gegner abfragen
SetPlayerPos(playerid, x+2, y, z); //Spieler zum Gegner teleportieren
SendClientMessage(playerid, -1, "Feature activated");
break;
}
return 1;
}
else
{
SetPlayerRandomPos(playerid);
SendClientMessage(playerid, -1, "Normal spawned appeared");
return 1;
}
Alles anzeigen
Du musst das so in dein Code einfügen.
if(pData[playerid][P_SpawnPeople] == 1) //Prüfen ob der Spieler das Feauture besitzt
{
for(new i = 0; i < MAX_PLAYERS; i++) {
if(!IsPlayerConnected(i) || IsPlayerNPC(i))continue; // Logisch
if(pData[i][P_Watching] != false || IsInLobby[i] != false || InDuel[i] != false)continue; //i befindet sich im Spec, in der Lobby oder im Duel
new Float: x, Float: y, Float:z;
GetPlayerPos(i, x, y, z); //Position vom Gegner abfragen
SetPlayerPos(playerid, x+2, y, z); //Spieler zum Gegner teleportieren
break;
}
return 1;
}
else SetPlayerRandomPos(playerid);
return 1;
Alles anzeigen
Erstens ist das schon mal das falsche public gewesen, da wenn der Spieler von einer Brücke springt würde er kein Leben verlieren.
Allerdings soll der Spieler kein Leben verlieren wenn er durch einen anderen Spieler verletzt wird, oder?
public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid, bodypart)
{
if(damageid != INVALID_PLAYER_ID){
if(PlayerInfo[damagedid][pLevel] == 1 && !PlayerInfo[playerid][pCop]){ // PlayerInfo[playerid][pCop] - Variable ggf. ändern
new Float:HP; GetPlayerHealth(damagedid, HP);
SetPlayerHealth(damagedid, HP);
SendClientMessage(playerid, -1, "Du darfst keine Neulinge verletzen.");
}
}
return 1;
}
Alles anzeigen
So sollte es funktionieren, allerdings muss die eine Variable wahrscheinlich geändert werden.
Das von @malE sieht sehr interessant aus.
Ist es sehr basslastig? Wenn ja, top.
Und wie ist es mit dem Sitz und der Bequemlichkeit an den Ohren?
Mit dem Sound kann man überhaupt nicht meckern, super klarer und saubere Bass. Wenn ich Musik höre schalte ich den virtuellen 7.1 Surround Sound allerdings eigentlich immer aus.
Höre manchmal auch basslastige Songs (z.B von Kevin Flum, Panda) und bin sehr zufrieden. Mit der Bequemlichkeit des Headsets kann ich als Brillenträger auch nicht meckern, ich weiß allerdings nicht wie es dann bei dir ist, weil du sagtest ja du hast ein Hörgerät.
Lege dir das HyperX Cloud 2 (virtueller 7.1 Surround Sound) oder das HyperX Cloud Pro (Stereo Sound) ans Herz, viel Zubehör, super Sound und gutes Mic.
Jeweils bei den Koordinaten die Klammern entfernen.
Der selben Meinung bin ich auch, danke Pascal!
Es gibt nämlich auch eine coolere Lösung.
Müsste so funktionieren.
public OnPlayerUpdate(playerid)
{
new Float:currentHP;
GetPlayerHealth(playerid, currentHP);
if(currentHP != GetPVarFloat(playerid, "HP")){
OnPlayerHealthHasChange(playerid, GetPVarFloat(playerid, "HP"), currentHP);
SetPVarFloat(playerid, "HP", currentHP);
}
return 1;
}
Bin jetzt etwas verwirrt, welche Variante möchtest du denn jetzt haben?
Du kannst auch damit entgegenwirken indem du eine Variable erstellst die überprüft ob der Spieler HP vom Server aus bekommen hat und wenn nicht wird er gebannt.
Z.b. PlayerInfo[playerid][pLoggedIn] diese Variable wird dann auf true gesetzt sobald der Spieler eingeloggt ist (wichtig eingeloggt und nicht auf dem server connected).
Allerdings verstehe ich nicht warum du es nicht über 100 HP machst.
Der Spieler verbindet sich automatisch mit 100 HP, es kann sein das es daran liegt. Hast du eine Variable die prüft ob der Spieler eingeloggt ist?