Anstatt CreateDynamicObjects machst du nur Createobjects dann laden die objekte schneller also der Boden nur mit createobjects, ich hoffe du meinst es so
Ja, so habe ich es damals auch gemacht.
Aber es muss doch noch ne andere Lösung geben
MfG
Anstatt CreateDynamicObjects machst du nur Createobjects dann laden die objekte schneller also der Boden nur mit createobjects, ich hoffe du meinst es so
Ja, so habe ich es damals auch gemacht.
Aber es muss doch noch ne andere Lösung geben
MfG
Hallo Brotfische,
Ich habe das Problem das meine Actoren durch den Boden fallen und auf der Straße landen.
Mir ist bewusst an was der Fehler liegt, jedoch weiß ich nicht wie ich das beheben kann.
Die Map wo sich mein Actor befindet wurde mit "CreateDynamicObject's" erstellt, sprich die Objekte laden ja erst wenn man sich in der Nähe befindet.
Dadurch fallen die Actoren auch durch den Boden, soweit sogut.
Aber wie behebe ich das?
Vielleicht kann mir ja jemand von euch helfen
MfG
Ich bin mir aber sicher dass das bisher nie Probleme gab wenn man Variablen mit gleichem Namen in verschiedenen Commands nutzt.
Da, hast du Recht. Eigentlich sollten keine Probleme dadurch entstehen.
Hast du es mal mit meinem Code versucht? Kommen dort auch Fehler?
MfG
Du hast "string" wahrscheinlich global definiert.
Ja, das denke ich auch. Entweder du suchst mal in deinem Script mit (STRG + F) und gibtst mal "new string" ein oder du testet es so, dann sollte kein Fehler kommen
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/com1", cmdtext, true, 10) == 0)
{
new strX[128];
//......
return 1;
}
if(strcmp("/com2", cmdtext, true, 10) == 0)
{
new strX[128];
//......
return 1;
}
}
Alles anzeigen
MfG
Also bei diesem hier bin ich mir 100% sicher:
Darf ich fragen woher? Ich war damals in einem Projekt tätig, und habe für den Server die Map entwickelt.
Jedoch wurde das Projekt nach kurzer Zeit beendet. Die Copyrights liegen alleine bei mir.
MfG
Mir gefallen die Maps, wer hat diese gemacht wenn ich fragen darf?
Die Map's stammen von mir.
nur die Textur in der Stadthalle schreckt mich ab
Danke für dein Feedback. Ich werde mich mal nach einer schickeren Texture umschauen
Mit ocmd kannst du es Bespielsweise so schreiben:
ocmd:check(playerid,params[]){
new pID;
if(PlayerInfo[playerid][pAdmin] == 0)return SendClientMessage(playerid,-1,"Du bist kein Admin.");
if(sscanf(params,"u",pID))return SendClientMessage(playerid,-1,"/check [id/name]");
if(!IsPlayerConnected(pID))return SendClientMessage(playerid,-1,"Der Spieler ist nicht online!);
Stats(playerid,pID);
return 1;
}
MfG
Die Funktion [wiki]Strcmp[/wiki] funktioniert aufjeden Fall auch im Dialog.
//Edit:
Habe den Fehler entdeckt .
Teste es mal so:
if(dialogid == DIALOG_UNTERSCHRIFT)
{
if(!response)return SendClientMessage(playerid, COLOR_WHITE, "{FF8484}Abgebrochen{FFFFFF}.");
new unterschrift[128], besitzer[MAX_PLAYER_NAME];
format(unterschrift,128,inputtext);
GetPlayerName(playerid, besitzer, MAX_PLAYER_NAME);
if(!strcmp(unterschrift, besitzer, true))
{
// wenn es übereinstimmt was passieren soll
}
return SendClientMessage(playerid, COLOR_WHITE, "{FF8484}Fehler{FFFFFF}! Unterschrift stimmt nicht mit deinem Namen überein!");
}
Alles anzeigen
MfG
Teste es mal so gegebenenfals bei der Funktion [wiki]Strcmp[/wiki] true oder false anpassen.
if(dialogid == DIALOG_UNTERSCHRIFT)
{
if(!response)return SendClientMessage(playerid, COLOR_WHITE, "{FF8484}Abgebrochen{FFFFFF}.");
new unterschrift[128], besitzer[MAX_PLAYER_NAME];
format(unterschrift,128,inputtext);
GetPlayerName(playerid, besitzer, MAX_PLAYER_NAME);
if(!strcmp(unterschrift,besitzer,true))return SendClientMessage(playerid, COLOR_WHITE, "{FF8484}Fehler{FFFFFF}! Unterschrift stimmt nicht mit deinem Namen überein!");
// wenn es übereinstimmt was passieren soll
return 1;
}
MfG
Teste es mal so:
if (strcmp("/opark", cmd, true, 10) == 0){
if(!IsPlayerInAnyVehicle(playerid))return SendClientMessage(playerid,-1,"Du bist in keinem Fahrzeug!");
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid,-1,"Du bist nicht der Fahrer!");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 525)return SendClientMessage(playerid, -1, "Du bist in keinem Abschleppwagen!");
if(PlayerInfo[playerid][pMember] != 24||PlayerInfo[playerid][pLeader] != 24)return SendClientMessage(playerid, -1, "Du bist kein Mitglied des Ordnungsamtes!");
if(!IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))return SendClientMessage(playerid, 0xFF0000FF, "An deinem Abschleppwagen ist kein Auto angehängt!");
new trailercar = GetVehicleTrailer(GetPlayerVehicleID(playerid)),Float:X,Float:Y,Float:Z,Float:z_rot,carowner = GetDtCarOwner(trailercar),slot = GetDtCarOwnerSlot(carowner,trailercar);
GetVehiclePos(trailercar, X,Y,Z);
GetVehicleZAngle(trailercar, z_rot);
PlayerCar[carowner][slot][CarPos_x] = X;
PlayerCar[carowner][slot][CarPos_y] = Y;
PlayerCar[carowner][slot][CarPos_z] = Z;
PlayerCar[carowner][slot][Abgeschleppt] = 1;
PlayerCar[carowner][slot][CarArrest] = 1;
PlayerCar[carowner][slot][CarRotate] = z_rot;
new fkasse = 2000 + random(2999);
FraktionsKasse[23] += fkasse;
DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
return SendClientMessage(playerid, COLOR_YELLOW, "Du hast das Fahrzeug erfolgreich abgeschleppt!");
}
Alles anzeigen
MfG
Hab im Breadfish Forum ein Tutorial zu anklickbaren TextDraws gefunden.
Sollte dir eigentlich helfen, da dort die Grundfunktionen erklärt sind.
//Kleines Update:
Das Video erklärt auch wie man TextDraws anklickbar macht:
MfG
Der Fehler ist ganz Simpel
Deine Abfrage:
hier schreibst du db_id klein (sInfo[playerid][db_id])
Beim Speichern jedoch:
format(query,sizeof(query),"UPDATE Spielerautos SET X=%f ,Y=%f,Z=%f,ROTATION=%f WHERE DB_ID=%i AND BESITZER='%i' AND MODEL=%i",cInfo[i][carx],cInfo[i][cary],cInfo[i][carz],cInfo[i][carrota],cInfo[i][DB_ID],sInfo[i][DB_ID],cInfo[i][modelID]);
schreibst du es groß (sInfo[i][DB_ID])
Das bedeutet:
zu:
MfG
Du kannst das z.B. so machen:
enum HELP_ARTIKEL{
haID,
haKategorie[128],
haInputtext[2600]
};
#define MAX_ARTIKEL 2
new Artikel[MAX_ARTIKEL][HELP_ARTIKEL] = {
{1,"Drogendealer","Das ist der Job Drogendealer.\nBefehl zu diesem Job\nfindest du unter /jobhelp"},
{2,"Arbeitsamt","Das Arbeitsamt ist in.\nLos Santos Mitte.\nDer Ort ist unter /navi zu finden."}
};
ocmd:help(playerid,params[]){
new id;
if(sscanf(params,"i",id))return SendClientMessage(playerid,-1,"Verwendung: /help [Artikelnummer]");
if(!IsValidArtikelID(id))return SendClientMessage(playerid,-1,"Ungültiger Artikel!");
ShowPlayerDialog(playerid,DIALOG_HELP,0,Artikel[id][haKategorie],Artikel[id][haInputtext],"Schließen","");
return 1;
}
stock IsValidArtikelID(aid)
{
for(new i = 0; i < MAX_ARTIKEL; i++){
if(aid == Artikel[i][haID])return 1;
}
return 0;
}
Alles anzeigen
Das System habe ich jetzt schnell geschrieben und ist eigentlich auch sehr Simpel, aber vielleicht nützt es dir es ja etwas.
Getestet habe ich es nicht!
ändere:
plugins streamer.dll mysql.dll filemanager.dll crashdetect.dll
zu:
Die Dateiendungen sind nur bei Linux pflicht (.so)
Okay, kannst du mir einmal den Inhalt deiner server.cfg senden und OnGameModeInit aus dem Script.
Wird der Server auf Linux oder Windows gestartet?
Mit der Lizenz bin ich ja berechtigt 2x 256 Slot TS zu erstellen oder einen 512 Slot TS, habe ich das so richtig verstanden?
Forum ist wohl nicht nötig, sofern man seine ''Bewerbung'' bzw. Seinen Antrag da richtig ausfüllt sind die dort recht kooperativ.
Also arbeite gerade an einem Forum und möchte den Teamspeak als kostenlose Dienst anbieten. Aber was ist mit Bewerbungen gemeint ?