GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: Shady - 2012. december 29. - 21:05:58

Cím: NPC neve a feje fölé! Hogyan?
Írta: Shady - 2012. december 29. - 21:05:58
Így néz ki a kódom..
 
if(IsPlayerNPC(playerid))
    {
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, botname, sizeof(botname));
    if(!strcmp(botname, \"[]Robot[]\", true))
    {
    SetPlayerSkin(playerid, 139);
ShowPlayerMarkers(1); //Térképen mûködik
ShowNameTags(1); //Ide van írva de nem mutatja a játékba.
SetPlayerColor(playerid, COLOR_PINK);
}
}
Cím: NPC neve a feje fölé! Hogyan?
Írta: FRZR9000 - 2012. december 29. - 21:10:19
Én ezt úgy oldottam meg az egyik módomban hogy az npc helyére raktam egy 3DText-et.
Cím: NPC neve a feje fölé! Hogyan?
Írta: Shady - 2012. december 29. - 21:23:11
Én ezt úgy oldottam meg az egyik módomban hogy az npc helyére raktam egy 3DText-et.[/quote]
Arról még nem tudok semmit :D
Cím: NPC neve a feje fölé! Hogyan?
Írta: FRZR9000 - 2012. december 30. - 09:11:53
Create3DTextLabel(\"Ez a szöveg jelenik meg az npc felett\", COLOR_WHITE, X,Y,Z, 40.0, 0, 1);

 
X,Y,Z, helyére mehet az npc-nek a helye de a \"Z\" koordinátát egyel növelni kell ahhoz hogy az NPC felett jelenjen meg.
Például:
212.4368, 1822.6448, 6.4141 (Itt áll az npc)


Create3DTextLabel(\"Ez a szöveg jelenik meg az npc felett\", COLOR_WHITE, 212.4368, 1822.6448, 7.4141, 40.0, 0, 1);


Kicsit bõvebben a 3DTextekrõl itt: http://sampforum.hu/index.php?topic=33532.0
Cím: NPC neve a feje fölé! Hogyan?
Írta: Shady - 2012. december 30. - 11:37:12
Írtam egy hasonlót látatlanba mobilon, de gondolom akkor ez nem jó
 

//mód elején
new Text3D:npc;
//gamemód
OnGameModeInit()
{
npc = Create3DTextLabel(\"[Npc]Neve\", playerid, X,Y,Z);
return 1;
}
//spawnolás
OnPlayerSpawn()
{
(Megírva..)
}
SetPlayerSkin(playerid, 217);
Attach3DTextLabel(npc, playerid);
}
}
return 1;
}
Cím: NPC neve a feje fölé! Hogyan?
Írta: Casamiro - 2012. december 30. - 13:48:01
Vagy CreateDynamic3DTextLabel segítségével (streamer szükséges hozzá) létrehozol egyet, amit egybõl rácsatolhatsz az NPC -re, és azt ha elteleportálod onnan, akkor is a feje fölött marad.
Cím: NPC neve a feje fölé! Hogyan?
Írta: Shady - 2012. december 30. - 13:58:43
Streamerem van.. Köszi.
Cím: NPC neve a feje fölé! Hogyan?
Írta: Live - 2012. december 30. - 13:58:57
new Text3D:npct;
if(IsPlayerNPC(playerid))
    {
    new botname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, botname, sizeof(botname));
    if(!strcmp(botname, \"[]Robot[]\", true))
    {
    SetPlayerSkin(playerid, 139);
ShowPlayerMarkers(1); //Térképen mûködik
ShowNameTags(1); //Ide van írva de nem mutatja a játékba.
SetPlayerColor(playerid, COLOR_PINK);
npct = Create3DTextLabel(\"[Npc]Neve\",0x00FF00AA,0,0,0,50.0,0,0);
    Attach3DTextLabelToPlayer(npct,botname,0,0,2.0);
}
}
Cím: NPC neve a feje fölé! Hogyan?
Írta: Shady - 2012. december 30. - 14:28:30
Erre a sorra Errort ír:
 
Attach3DTextLabelToPlayer(npct,botname,0,0,2.0);

 
E: Playerid-vel nincs error:
 
Attach3DTextLabelToPlayer(npct,playerid,0,0,2.0);

 
E2: Ha playerid-t írok akkor a játékban nincs ott a név és nem a beállított skint használja.
Cím: NPC neve a feje fölé! Hogyan?
Írta: attila91 - 2012. december 30. - 14:59:36
new Text3D:Asd[MAX_PLAYERS];
new playername[64];
GetPlayerName(playerid,playername,64);
if(!strcmp(playername,\"NPC NEVE\",true))
{
    Asd[playerid] = Create3DTextLabel(\"Amit akarsz\",SZIN KOD, 30.0, 40.0, 50.0, 40.0, 0);
    Attach3DTextLabelToPlayer(Asd[playerid],playerid,0.0, 0.0, 0.7);
}
Cím: NPC neve a feje fölé! Hogyan?
Írta: Shady - 2012. december 30. - 15:20:25
Ezt az OnPlayerSpawn-hoz?
E: Most jó.. Megoldva
Kössz a segítségeket, adok pontot. :whistle: