DocumentRoot "/www/example1" = Verzeichnis ?ServerName http://www.example.com = domain ?
Beiträge von robbi2304
-
-
Ich würde gerne eine Domain meinem Server hinzufügen. Allerdings weiß ich nicht wirklich wie das funktioniert.
Ich besitze kein Control Panel wie Plesk, wamp oder ähnliches.Lediglich apache2 + php5 + phpmyadmin
ggf kann mir das ja mal einer erklären =D
-
Wie sieht denn dein Befehl komplett mit print aus?
Sicher, dass du das Plugin nutzt, und nicht im Code doch noch die Funktion irgendwo definiert hast?mein code sieht folgendermaßen aus
ocmd:materials(playerid,params[])
{
if(PlayerInfo[playerid][pLoggedIn]==false) return 1;
new ding[20], anzahl, string[145];
if(sscanf(params, "s[20]I(-1)", ding, anzahl)) return SendClientMessage(playerid,COLOR_RED,"Benutze /materials [get/deliver/put/gtake/sell] [opt:Anzahl]");
{
format(string,sizeof(string),"Anzahl: %i",anzahl);
SendClientMessage(playerid,COLOR_GREEN,string);
if(!strcmp(ding, "deliver", true))
{
if(IsPlayerInRangeOfPoint(playerid,2.5,-2027.7643,-40.7760,38.8047))
{
if(PlayerInfo[playerid][pJob] != 2) return SendClientMessage(playerid,COLOR_RED,"Du bist kein Waffendealer");
{
if(PlayerInfo[playerid][pMatskauf] == 0) return SendClientMessage(playerid,COLOR_RED,"Du hast dir keine Mats gekauft");
{
PlayerInfo[playerid][pMats] = PlayerInfo[playerid][pMatskauf]*75;
PlayerInfo[playerid][pMatskauf] = 0;
format(string,sizeof(string),"Du hast %d Mats erhalten.",PlayerInfo[playerid][pMats]);
SendClientMessage(playerid,COLOR_GREEN,string);
format(string, sizeof(string), "%s hat %i Mats abgeholt", PlayerInfo[playerid][pName],PlayerInfo[playerid][pMatskauf]*75);
SaveToLog("Matsabholen", string);
}
}
}
return 1;
}
else if(!strcmp(ding, "get", true))
{
if(anzahl == -1) return SendClientMessage(playerid,COLOR_RED,"Benutze /materials get [Anzahl]");
if(IsPlayerInRangeOfPoint(playerid,2.5,597.3653,-1249.4796,18.3040))
{
if(PlayerInfo[playerid][pJob] != 2) return SendClientMessage(playerid,COLOR_RED,"Du bist kein Waffendealer");
{
if(anzahl*3800 > PlayerInfo[playerid][pMoney]) return SendClientMessage(playerid,COLOR_RED,"Du trägst nicht genug Geld bei dir!");
if(anzahl == 0) return SendClientMessage(playerid,COLOR_RED,"Du hast eine Ungültige Eingabe getätigt.");
if(anzahl > 10) return SendClientMessage(playerid,COLOR_RED,"Du kannst nicht mehr als 10 Mat Pakete kaufen!");
if(PlayerInfo[playerid][pMatskauf]>0) return SendClientMessage(playerid,COLOR_RED,"Hole deine bereits gekauften Mats zuerst ab!");
PlayerInfo[playerid][pMoney]-=anzahl*3800;
GivePlayerMoney(playerid,-anzahl*3800);
PlayerInfo[playerid][pMatskauf] = anzahl;
format(string,sizeof(string),"Du hast dir %d Matspackete für %d$ gekauft. Hole nun deine Mats ab. Der Abholpunkt wurde dir auf der Map markiert.",anzahl,anzahl*5);
SendClientMessage(playerid,COLOR_GREEN,string);
SendClientMessage(playerid,COLOR_RED,"Lass dich nicht erwischen. Dies könnte teuer enden.");
SendClientMessage(playerid,COLOR_GREEN,"Solltest du dich Ausloggen ohne deine Mats zuvor abgeholt zu haben, verfallen diese ohne Ausnahmen!");
SetPlayerCheckpoint(playerid,-2027.7643,-40.7760,38.8047, 3.0);
format(string, sizeof(string), "%s hat sich %i Mats gekauft. Preis: %i",getPlayerName(playerid),anzahl,anzahl*750);
SaveToLog("Matskauflog", string);
}
}
return 1;
}
else if(!strcmp(ding, "put", true))
{
if(anzahl == -1) return SendClientMessage(playerid,COLOR_RED,"Benutze /materials put [Anzahl]");
if(anzahl > PlayerInfo[playerid][pMats]) return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genug Mats dabei.");
PlayerInfo[playerid][pMats] -= anzahl;
PlayerInfo[playerid][pMatss] += anzahl;
format(string,sizeof(string),"Du hast %d Mats in den Safe gepackt. Gesamt: %d",anzahl,PlayerInfo[playerid][pMatss]);
SendClientMessage(playerid,COLOR_GREEN,string);
SaveUserStats(playerid);
new string2[128];
format(string2,sizeof(string2),"%s hat %d Mats in den Safe gepackt. Gesamt: %d",getPlayerName(playerid),PlayerInfo[playerid][pMatss],anzahl);
SaveToLog("Putmats", string2);
return 1;
}
else if(!strcmp(ding,"gtake",true))
{
if(anzahl == -1) return SendClientMessage(playerid,COLOR_RED,"Benutze /materials gtake [Anzahl]");
if(anzahl > PlayerInfo[playerid][pMatss]) return SendClientMessage(playerid,COLOR_RED,"Du besitzt nicht soviele Mats");
PlayerInfo[playerid][pMats] += anzahl;
PlayerInfo[playerid][pMatss] -= anzahl;
format(string,sizeof(string),"Du hast %d Mats aus den Safe genommen. Gesamt: %d",anzahl,PlayerInfo[playerid][pMatss]);
SendClientMessage(playerid,COLOR_GREEN,string);
SaveUserStats(playerid);
return 1;
}
}
return 1;
}und ich habe nochmal geguckt ich verwende die erste sscanf version also nicht die sscanf2
-
Dann versuche es so:if(sscanf(params, "s[20]I(-1)", ding, anzahl)) return SendClientMessage(playerid,COLOR_RED,"Benutze /materials [get/deliver/put/gtake/sell] [opt:Anzahl]");
Dies löst leider nicht das Problem. Ein Print gibt Allgemein aus das es immer null ist
-
Aber ganz verstehe ich nicht wie du das Koax-Kabel in die 7490 bekommen hast. xD
Hierfür verwende ich ein zusätzliches Teil was es mir ermöglicht das Coax Kabel anzuschließen und das extra Teil bietet mir die möglichkeit dann ein UTP-Kabel daran anzuschließen. Somit ist eine Konvertierung ermöglicht und die FritzBox kann verwendet werden
-
Wie gesagt mein Tipp: Mal direkt an das Modem anschließen, vergleichen.
Wenn das nix bringt: Kabel tauschen, nochmal checken.
Wenn das nix bringt: Provider Hotlien anrufen und dann sollen die sich damit rumärgern.Ein neues Modem solltest du eigentlich nicht brauchen (es sei denn deins hat ne Macke). Und bin mir wie gesagt nicht mal sicher ob man bei Kabel Anschlüssen so ohne weiteres das Modem tauschen kann. Gab da glaub ich mal ne Debatte, hab die aber nicht ganz so verfolgt..
Es ist sehr schwer einen neuen Router bei Kabel einzusetzen. Weil man dort die Registrierungsdaten aus der Box auslesen muss und diese auf die neue spielen muss. Hierfür eignet sich wenn ideal das gleiche modell. Durch ein anderes Modell könnte es schwieriger werden
-
Ich bezweifle das die Banbreite etwas mit dem Router in diesem Fall zutun hat. Ich habe eine FritzBox 7362 von 1&1 die das Ergebniss verspricht wie vom Provider erfordert.
Hinzu besitze ich noch einen Anschluss von Kabeldeutschland 400 Mbit/s Businness.
Auch dieser läuft mit einer FritzBox aber mit der FritzBox 7490 die ich mir selber angeschafft habe. Mit der 6490 erreiche ich das gleiche wie mit der 7490 nur war die 7490 eben anspruchsvoller für mich.
Daher Lan Kabel auswechseln, falls das nichts bringt provider kontaktieren.
Und als Tipp, ich habe ne 400 Mbit/s Leitung im Download und im Upload 25 Mbit/s. Der Upload ist meist anders als der Download
-
Nun möchte ich gerne noch das dass Fahrzeug gelöscht wird.
Hier der Anfang den ich bisher gemacht habe
public OnVehicleDeath(vehicleid, killerid)
{
for(new i = 0; i < MAX_VEHICLES; i++)
{
if(isEventVehicle[i] == 1)
{
DestroyVehicle(vehicleid);
SendClientMessage(killerid,-1,"Event Fahrzeug gelöscht");
}
}
return 1;
} -
Liegt wohl daran, dass der Lösungsvorschlag von Jeffry nur für das sscanf-Plugin zählt und nicht für die einzelne Funktion. Zumindestens vermute ich, dass du die nonplugin Version benutzt, da du bei s keine Arraygröße angegeben hast und das atypisch wäre für die Pluginversion. Falls nicht, google einfach mal sscanf2 samp und ersetz es mit deiner Funktion.
Ich habe mir die Anzahl mal an bestimmter Stelle Printen lassen.
Der Print gibt folgendes aus
Anzahl:0
ich besitze das sscanf plugin version 2
-
Habe das ganze nun mal ausgibig getestet. Nun sagt er mir immer den return von hier
if(sscanf(params, "sI(-1)", ding, anzahl)) return SendClientMessage(playerid,COLOR_RED,"Benutze /materials [get/deliver/put/gtake/sell] [opt:Anzahl]");
-
Hallo, erstmal danke für deinen Post. Allerdings stelle ich mir das etwas anders vor. Ich habe mich vielleicht auch nicht deutlich ausgedrückt.
Ich erstelle Fahrzeuge z.b mit einer Variable Event-Fahrzeug.
Somit sollen alle Fahrzeuge gestartet werden die, die Variable Event-Fahrzeug besitzen.
Ganz egal wer drin sitzt.
-
Hallo, gerne möchte ich bei Fahrzeugen die ich mit einem Befehl erstelle, den Motor außerhalb des Fahrzeuges starten können.
Also ich erstelle z.b 5 Fahrzeuge und 5 Spieler setzen sich in die Fahrzeuge hinein.
Ich möchte also für die Fahrzeuge den Motor starten und nicht der Spieler der im Fahrzeug ist. Wie würde solch ein Befehl aussehen ?
-
Vielleicht solltest du Fahrzeugtyp noch mit einbauen.
-
Du hattest nie die Kraft gehabt dich ans Gamemode zusetzen ? Warum solltest du sie jetzt haben `?
-
Passt. Wie mache ich das am besten wenn ich an einem Automaten mein Leben healen will ? Gibt es ne bestimmte funktion die abfragt ob was ausm automat genommen wird oder nich t?
-
Folgendes wird mir ausgegeben
[18:26:15] i: 0 / Health: 100.000000 / pHealth: 90.000000
[18:26:15] i: 0 / Health: 90.000000 / pHealth: 90.000000
[18:26:15] i: 0 / Health: 90.000000 / pHealth: 90.000000ich sehe [18:26:15] i: 0 / Health: 100.000000 / pHealth: 90.000000
hier ist wohl ein Fehler. Allerdings gebe ich den Health nicht mehr an außer in OnPlayerSpawn -
Für deinen Anti-Cheat dann:
pHealth[playerid] = PlayerInfo[playerid][pLive];SetPlayerHealth(playerid, pHealth[playerid]);Ab dort kriege ich wieder angezeigt das ich ein Hacker bin.
Ich poste mal hinzu dort wo mir das gesagt wird
foreach(Player, i)
{
new Float:Health;
GetPlayerHealth(i, Health);
if(Health != pHealth[i] && Health > 0)
{
if(Health > pHealth[i])
{SetPlayerHealth(i, pHealth[i]);
SendClientMessage(i,COLOR_RED, "Health Hacker");
}
else
{
pHealth[i] = Health;
return 1;
}
}
} -
Mit SetPlayerHealth(playerid, PlayerInfo[playerid][pLive]);
funktioniert es ich kriege dadurch auch keine Warnung das ich ein Heal Hacker wäre (habe das kicken ausgebaut und nen scm eingebaut.
Allerdings erkennt SetPlayerHealth ja keinen Cheat soweit ich weiß
-
Er gibt den Wert 100 aus den ich in OnPlayerConnect setze ja.
Allerdings soll der Spieler sobald er gespawnt wird mit dem Leben aus PlayerInfo[playerid][pLive] gesetzt werden.
-
Die Schleife darunter mit foreach war nicht meine absicht gewesen.
Ich habe den Code wie folgt nun abgeändert
public OnPlayerSpawn(playerid)
{
if(PlayerInfo[playerid][SpawnInKnast]==1)
{
SetPlayerPos(playerid, 265.9037,77.2875,1001.0391);
SetPlayerInterior(playerid,6);
jailTimer[playerid] = SetTimerEx("SetPlayerUnjail", 1000, 1, "d",playerid);
if(jailTimer[playerid] == -1) KillTimer(jailTimer[playerid]);
TogglePlayerControllable(playerid,1);
}
switch(PlayerInfo[playerid][pSpawn])
{
case 0:
{
PlayerInfo[playerid][pSpawn]=1;
}
case 1:
{
SetPlayerPos(playerid,1830.9562,-1125.6575,23.8393);
SetPlayerVirtualWorld(playerid,0);
}
case 2:
{
SetPlayerPos(playerid,-1969.2156,137.9266,27.6875);
SetPlayerVirtualWorld(playerid,0);
}
case 3:
{
SetPlayerPos(playerid,2849.0522,1290.9452,11.3906);
SetPlayerVirtualWorld(playerid,0);
}
case 4:
{
if(PlayerInfo[playerid][pMember]>0 || PlayerInfo[playerid][pLeader]>0)
{
new fID;
fID = PlayerInfo[playerid][pMember];
SetPlayerPos(playerid, fInfo[fID][f_x],fInfo[fID][f_y],fInfo[fID][f_z]);
SetPlayerFacingAngle(playerid, fInfo[fID][f_r]);
SetPlayerInterior(playerid, fInfo[fID][f_inter]);
SetPlayerVirtualWorld(playerid, fInfo[fID][f_world]);
SetPlayerColor(playerid, fInfo[fID][f_color]);
}
else
{
PlayerInfo[playerid][pSpawn]=1;
SpawnPlayer(playerid);
}
}
case 5:
{
for(new i=0; i<sizeof(hInfo); i++)
{
if(!hInfo[i][h_id])continue;
if(!strlen(hInfo[i][h_besitzer]))continue;
if(strcmp(hInfo[i][h_besitzer], getPlayerName(playerid), true))continue;
if(hInfo[i][ih_x] != 0.0)
{
//Im Haus spawnen
SetPlayerPos(playerid, hInfo[i][ih_x], hInfo[i][ih_y], hInfo[i][ih_z]);
SetPlayerInterior(playerid, hInfo[i][h_interior]);
SetPlayerVirtualWorld(playerid, i);
}
else
{
//Vorm Haus Spawnen
SetPlayerPos(playerid, hInfo[i][h_x], hInfo[i][h_y], hInfo[i][h_z]);
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
}
}
}
}
if(OnDuty[playerid] ==1)
{
OnDuty[playerid] =0;
}
SetPlayerArmour(playerid,0);
SetPlayerSkin(playerid,PlayerInfo[playerid][pSkin]);
printf("1: %f", pHealth[playerid]);
printf("2: %f", pHealth[playerid]);
return 1;
}Der Print gibt folgendes aus
[18:01:12] 1: 100.000000[18:01:12] 2: 100.000000
eigentlich beides richtig.
Vielleicht ist OnPlayerConnect noch mit entscheiden aber dort setze ich das leben mit
pHealth[playerid] = 100;
Das Problem taucht nur auf wenn der Spieler sich neu einloggen tut. Allerdings nicht wenn ich den Spieler neu spawne