Du musst die Objekte ja auch beim Exit Destroyen lassen!
mfg
Du musst die Objekte ja auch beim Exit Destroyen lassen!
mfg
if(!strcmp(cmdtext, "/text", true)){
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)return SendClientMessage(playerid,-1,"Du musst Fahrer eines Fahrzeugs sein!");
new Text3D:textlabel = Create3DTextLabel("text blabla", -1, 0, 0, 0, 20.0, GetPlayerVirtualWorld(playerid), 1);
Attach3DTextLabelToVehicle(textlabel, GetPlayerVehicleID(playerid), 0.0, 0.0, 0.4);
return SendClientMessage(playerid,-1,"du hast ein text3d label über dem fahrzeug erstellt.");
}
Dies hier ist einmal Beispiel Code, schau ihn dir mal genau an
//Edit Code verändert
mfg
Hiermal ein paar Funktionsnamen dafür:
TogglePlayerControllable
SetTimer/ex
CreateObect
DestroyObect
SetVehiclePos
CreateVehicle
mfg
Ich verstehe nicht genau was du meinst, bei mir wird in die Datenbank nichts eingetragen, also auch keine Daten von der ersten Gangzone. Wie mach ich das denn genau?
Er meint, dass du UPDATE verwendest, aber wenn es noch keine Zeile zum Updaten gibt ?
Deswegen REPLACE INTO oder so.
EDIT://
Bist du blind ?
22:01:02] CMySQLHandler::Query(UPDATE gangwar SET owner='',maxX='2029.726684',maxY='1330.839477',minX='2053.801269',minY='1365.484130',flaggeX='2045.354370',flaggeY='1340.911376',flaggeZ='10.671875',erstellt='' WHERE id='0') - Successfully executed.
mfg
Lass den NPC's ruhig länger aufnehmen. Bei so kurzer Zeit verlässt der NPC direkt wieder den Server, da er die .rec Datei durchgelaufen ist.
Er durchgeht die .rec Datei unendlich lang, und der bot war die ganze Zeit da!
EDIT://
Jetzt funktionierst, habe es einfach beim connecten gemacht, der print hat mir geholfen!
@ConnectNPC(_count);
@ConnectNPC(_count){
switch(_count){
case 0:{
ConnectNPC("Joe", "Joe");
for(new playerid; playerid < MAX_PLAYERS; playerid ++){
if(!IsPlayerConnected(playerid))continue;
if(!IsPlayerNPC(playerid))continue;
//printf("joe is connected, skin: %i", GetPlayerSkin(playerid));
SetPlayerSkin(playerid, 33);
//printf("joe is connected, skin: %i", GetPlayerSkin(playerid));
}
}
}
}
mfg
Die aufnahme von joe ist auch nur eine sekunde lang
mfg
Hast du diese pwn kompiliert?
Hast du die rec Datei bei den npcmodes drin?
Falls beides ja, lade die rec Datei hier mal als Anhang hoch.
Dein Wunsch ging in Erfüllung!
mfg
Kannst ja mal posten.
Hast du den Bot als im Fahrzeug oder als zu Fuß aufgenommen?
Hast du andere NPCs ingame, bei denen es klappt?
#include <a_npc>
main(){}
#define RECORDING "Joe"
#define RECORDING_TYPE 2
public OnRecordingPlaybackEnd() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
public OnNPCEnterVehicle(vehicleid, seatid) StartRecordingPlayback(RECORDING_TYPE, RECORDING);
public OnNPCExitVehicle()StopRecordingPlayback();
public OnNPCSpawn() StartRecordingPlayback(RECORDING_TYPE, RECORDING);
Das wäre mein 1ter NPC!
Ich habe ihn per /ofrecord zu Fuß aufgenommen.
mfg
Alles anzeigenVerbindet sich der NPC überhaupt auf den Server?
Hast du den NPC auch richtig aufgenommen?
Klappt es, wenn du bei OnPlayerConnect:
if(IsPlayerNPC(playerid)) SpawnPlayer(playerid);
setzt?
Hast du NPCs ingame, bei denen es klappt?
Nein es funktioniert so auch irgendwie auch nicht.
Was ist nur mit dem NPC los ??
Möchtest du vielleicht mal die Joe.pwn sehen ? (Quellcode)
mfg
Alles anzeigenSpawnPlayer bei OnPlayerSpawn ist eine schlechte Idee.
if(IsPlayerNPC(playerid)){
printf("Name = %s", getName(playerid));
if(!strcmp(getName(playerid), "Joe", true)){
printf("Skin 33 zu ID %d", playerid);
RepairAnims(playerid);
SetPlayerSkin(playerid, 33);
ApplyAnimation(playerid, "SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0, 0);
}
return 1;
}
Was wird geprintet, wenn du es so laufen lässt?
Es wird nichts geprintet, er führt das Callback OnPlayerSpawn nicht aus!
stock RepairAnims(playerid){
PreloadAnimLib(playerid,"AIRPORT");
PreloadAnimLib(playerid,"Attractors");
PreloadAnimLib(playerid,"BAR");
PreloadAnimLib(playerid,"BASEBALL");
PreloadAnimLib(playerid,"BD_FIRE");
PreloadAnimLib(playerid,"BEACH");
PreloadAnimLib(playerid,"benchpress");
PreloadAnimLib(playerid,"BF_injection");
PreloadAnimLib(playerid,"BIKED");
PreloadAnimLib(playerid,"BIKEH");
PreloadAnimLib(playerid,"BIKELEAP");
PreloadAnimLib(playerid,"BIKES");
PreloadAnimLib(playerid,"BIKEV");
PreloadAnimLib(playerid,"BIKE_DBZ");
PreloadAnimLib(playerid,"BLOWJOBZ");
PreloadAnimLib(playerid,"BMX");
PreloadAnimLib(playerid,"BOMBER");
PreloadAnimLib(playerid,"BOX");
PreloadAnimLib(playerid,"BSKTBALL");
PreloadAnimLib(playerid,"BUDDY");
PreloadAnimLib(playerid,"BUS");
PreloadAnimLib(playerid,"CAMERA");
PreloadAnimLib(playerid,"CAR");
PreloadAnimLib(playerid,"CARRY");
PreloadAnimLib(playerid,"CASINO");
PreloadAnimLib(playerid,"CHAINSAW");
PreloadAnimLib(playerid,"CHOPPA");
PreloadAnimLib(playerid,"CLOTHES");
PreloadAnimLib(playerid,"COACH");
PreloadAnimLib(playerid,"COLT45");
PreloadAnimLib(playerid,"COP_AMBIENT");
PreloadAnimLib(playerid,"COP_DVBYZ");
PreloadAnimLib(playerid,"CRACK");
PreloadAnimLib(playerid,"CRIB");
PreloadAnimLib(playerid,"DAM_JUMP");
PreloadAnimLib(playerid,"DANCING");
PreloadAnimLib(playerid,"DEALER");
PreloadAnimLib(playerid,"DILDO");
PreloadAnimLib(playerid,"DODGE");
PreloadAnimLib(playerid,"DOZER");
PreloadAnimLib(playerid,"DRIVEBYS");
PreloadAnimLib(playerid,"FAT");
PreloadAnimLib(playerid,"FIGHT_B");
PreloadAnimLib(playerid,"FIGHT_C");
PreloadAnimLib(playerid,"FIGHT_D");
PreloadAnimLib(playerid,"FIGHT_E");
PreloadAnimLib(playerid,"FINALE");
PreloadAnimLib(playerid,"FINALE2");
PreloadAnimLib(playerid,"FLAME");
PreloadAnimLib(playerid,"Flowers");
PreloadAnimLib(playerid,"FOOD");
PreloadAnimLib(playerid,"Freeweights");
PreloadAnimLib(playerid,"GANGS");
PreloadAnimLib(playerid,"GHANDS");
PreloadAnimLib(playerid,"GHETTO_DB");
PreloadAnimLib(playerid,"goggles");
PreloadAnimLib(playerid,"GRAFFITI");
PreloadAnimLib(playerid,"GRAVEYARD");
PreloadAnimLib(playerid,"GRENADE");
PreloadAnimLib(playerid,"GYMNASIUM");
PreloadAnimLib(playerid,"HAIRCUTS");
PreloadAnimLib(playerid,"HEIST9");
PreloadAnimLib(playerid,"INT_HOUSE");
PreloadAnimLib(playerid,"INT_OFFICE");
PreloadAnimLib(playerid,"INT_SHOP");
PreloadAnimLib(playerid,"JST_BUISNESS");
PreloadAnimLib(playerid,"KART");
PreloadAnimLib(playerid,"KISSING");
PreloadAnimLib(playerid,"KNIFE");
PreloadAnimLib(playerid,"LAPDAN1");
PreloadAnimLib(playerid,"LAPDAN2");
PreloadAnimLib(playerid,"LAPDAN3");
PreloadAnimLib(playerid,"LOWRIDER");
PreloadAnimLib(playerid,"MD_CHASE");
PreloadAnimLib(playerid,"MD_END");
PreloadAnimLib(playerid,"MEDIC");
PreloadAnimLib(playerid,"MISC");
PreloadAnimLib(playerid,"MTB");
PreloadAnimLib(playerid,"MUSCULAR");
PreloadAnimLib(playerid,"NEVADA");
PreloadAnimLib(playerid,"ON_LOOKERS");
PreloadAnimLib(playerid,"OTB");
PreloadAnimLib(playerid,"PARACHUTE");
PreloadAnimLib(playerid,"PARK");
PreloadAnimLib(playerid,"PAULNMAC");
PreloadAnimLib(playerid,"PED");
PreloadAnimLib(playerid,"PLAYER_DVBYS");
PreloadAnimLib(playerid,"PLAYIDLES");
PreloadAnimLib(playerid,"POLICE");
PreloadAnimLib(playerid,"POOL");
PreloadAnimLib(playerid,"POOR");
PreloadAnimLib(playerid,"PYTHON");
PreloadAnimLib(playerid,"QUAD");
PreloadAnimLib(playerid,"QUAD_DBZ");
PreloadAnimLib(playerid,"RAPPING");
PreloadAnimLib(playerid,"RIFLE");
PreloadAnimLib(playerid,"RIOT");
PreloadAnimLib(playerid,"ROB_BANK");
PreloadAnimLib(playerid,"ROCKET");
PreloadAnimLib(playerid,"RUSTLER");
PreloadAnimLib(playerid,"RYDER");
PreloadAnimLib(playerid,"SCRATCHING");
PreloadAnimLib(playerid,"SHAMAL");
PreloadAnimLib(playerid,"SHOP");
PreloadAnimLib(playerid,"SHOTGUN");
PreloadAnimLib(playerid,"SILENCED");
PreloadAnimLib(playerid,"SKATE");
PreloadAnimLib(playerid,"SMOKING");
PreloadAnimLib(playerid,"SNIPER");
PreloadAnimLib(playerid,"SPRAYCAN");
PreloadAnimLib(playerid,"STRIP");
PreloadAnimLib(playerid,"SUNBATHE");
PreloadAnimLib(playerid,"SWAT");
PreloadAnimLib(playerid,"SWEET");
PreloadAnimLib(playerid,"SWIM");
PreloadAnimLib(playerid,"SWORD");
PreloadAnimLib(playerid,"TANK");
PreloadAnimLib(playerid,"TATTOOS");
PreloadAnimLib(playerid,"TEC");
PreloadAnimLib(playerid,"TRAIN");
PreloadAnimLib(playerid,"TRUCK");
PreloadAnimLib(playerid,"UZI");
PreloadAnimLib(playerid,"VAN");
PreloadAnimLib(playerid,"VENDING");
PreloadAnimLib(playerid,"VORTEX");
PreloadAnimLib(playerid,"WAYFARER");
PreloadAnimLib(playerid,"WEAPONS");
PreloadAnimLib(playerid,"WUZI");
}
mfg
Funktioniert immer noch nicht!
if(IsPlayerNPC(playerid)){
if(!strcmp(getName(playerid), "Joe", true)){
RepairAnims(playerid);
SetPlayerSkin(playerid, 33);
SetSpawnInfo(playerid, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0),SpawnPlayer(playerid);
ApplyAnimation(playerid, "SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0, 0);
}
return 1;
}
Also die Anim führt er aus (kann aber auch an der .rec datei liegen!)
mfg
stock SaveGZ(){
new query[500];
for(new x, o = MAX_GZ; x != o; ++x){
if(GZ[i][max_x] == 0.0)continue;
format(query, sizeof query, "UPDATE `gangwar` SET `owner`='%s',`maxX`=%f,`maxY`=%f,`minX`=%f,`minY`=%f,`flaggeX`=%f,`flaggeY`=%f,`flaggeZ`=%f,`erstellt`='%s' WHERE `id`='%d'",
GZ[i][owner],GZ[i][max_x],GZ[i][max_y],GZ[i][min_x],GZ[i][min_y],GZ[i][flagge_x],GZ[i][flagge_y],GZ[i][flagge_z],GZ[i][erstellt],i);
mysql_query(query);
if((x == o && o == MAX_GZ))return 1;
}
return 0;
}
Probier das mal!
mfg
Füg das mal zur schleife hinzu.
if(!GZ[i][min_x])continue;
mfg
Du kannst es mal auf Zeit Testen, dann wirst du sehen ob das Resultat in Ordnung für dich ist.
mfg
Nenn mir mal bitte einen mit logischen grund warum ich dir die map Schicken sollte
Weil ich diese Map sehr anziehen finde
Ansonsten 9/10, der schwarze teppich & der BSN bin muell und haben nichts in der Stadthalle zu suchen, ist ja schließlich auch keine mall o.ä
mfg
ZitatC:\Dokumente und Einstellungen\David\Desktop\Justin-Roleplay\gamemodes\JRP.pwn
Das soll heißen, dass es denke mal nicht am Include liegt...
mfg
Alles anzeigenHast du das auch so?
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid))
{
if(!strcmp(getName(playerid),"Joe",true))
{
ApplyAnimation(playerid,"SMOKING","M_smklean_loop",4,1,0,0,0,0,0);
SetPlayerSkin(playerid,33);
}
}
//Rest
return 1;
}
public OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)){
if(!strcmp(getName(playerid), "Joe", true)){
SetPlayerSkin(playerid, 33);
ApplyAnimation(playerid, "SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0, 0);
}
return 1;
}
return 1;
}
mfg
Guten Tag,
Mein Name lautet CIBERKILLER.
Und zwar Funktioniert das setzen der Skins bei Bots nicht ganz.
//Beim spawnen
if(IsPlayerNPC(playerid)){
if(!strcmp(getName(playerid), "Joe", true)){
SetPlayerSkin(playerid, 33);
ApplyAnimation(playerid, "SMOKING", "M_smklean_loop", 4.0, 1, 0, 0, 0, 0, 0);
}
return 1;
}
mfg