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

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => A témát indította: Gamestar - 2010. Január 13. - 14:50:33

Cím: RP Beszélgetoablak
Írta: Gamestar - 2010. Január 13. - 14:50:33
RP Beszélgetoablak (Chat)
Ez a függvény az RP-nek jobban megfelelo X mondja: szöveg formába teszi az üzenetet, és így küldi el. Extraként lehet csak 1 bizonyos embernek elküldeni. Az onplayertext visszatérési értékét írjátok false-ra, hogy az alap méretezettet ne küldje el...
Demo:
 
public OnPlayerText(playerid, text[])
{
    SendRolePlayFormatToAll(playerid,text);
    return false;
}

 

stock SendRolePlayFormatToAll(playerid,str[],color=0xFFFFFFAA)
{
// Tárolók létrehozása
new name[MAX_PLAYER_NAME],
    formats[128];
// Név tárolása
GetPlayerName(playerid,name,sizeof name);
// Üzenet megformázása
format(formats,sizeof formats,\"%s mondja: %s\",name,str);
// Üzenet elküldése
SendClientMessageToAll(color,formats);
// Visszatérés
return true;
}
stock Chat_SendRolePlayFormatToPlayer(giveid,playerid,str[],color=0xFFFFFFAA)
{
// Tárolók létrehozása
new name[MAX_PLAYER_NAME],
    formats[128];
// Név tárolása
GetPlayerName(playerid,name,sizeof name);
// Üzenet megformázása
format(formats,sizeof formats,\"%s mondja neked: %s\",name,str);
// Üzenet elküldése
SendClientMessage(giveid,color,formats);
// Visszatérés
return true;
}
Cím: RP Beszélgetoablak
Írta: Depi - 2010. Január 13. - 17:27:06
Hasznos,grat  :)
Cím: RP Beszélgetoablak
Írta: BaNDiiKa - 2010. Február 07. - 21:02:49
Nem tudtam eddig megnézni, de van egy icikepicike hiba \'Chat_\' ha nem vagyok hüje. Kezdok kedvéért írd át, thx.
Cím: RP Beszélgetoablak
Írta: Coli - 2010. Február 08. - 14:48:00
Idézetet írta: BaNDiiKa date=1265572969\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"518\" data-ipsquote-contentclass=\"forums_Topic
Nem tudtam eddig megnézni, de van egy icikepicike hiba \'Chat_\' ha nem vagyok hüje. Kezdok kedvéért írd át, thx.
 
Nem vagy hülye  :)
Cím: RP Beszélgetoablak
Írta: Gamestar - 2010. Február 13. - 18:28:31
#include <a_samp>
RpNameToChat(name[]) {
new
    x=0;
while(name
  • ) { if(name
  • ==\'_\')name
  • =\' \'; x++; }

}
public OnPlayerText(playerid, text[])
{
new
    myString[128],
    myName[MAX_PLAYER_NAME];
GetPlayerName(playerid,myName,sizeof(myName));
RpNameToChat(myName);
format(myString,sizeof(myString),\"%s mondja: %s\",myName,text);
SendClientMessageToAll(0xFFFFFFAA,myString);
return 0;
}
Cím: RP Beszélgetoablak
Írta: GeGe88 - 2010. Március 14. - 09:41:32
Itt mindenkinek elküldi vagy csak a közelben lévoknek?
Cím: RP Beszélgetoablak
Írta: Iceaac - 2010. Március 14. - 09:51:50
Mindenkinek.
Cím: RP Beszélgetoablak
Írta: GeGe88 - 2010. Március 28. - 13:06:49
Köszi! Ez jól jött!
Cím: RP Beszélgetoablak
Írta: Xlavier - 2010. Április 02. - 18:47:33
Király pont ilyet kerestem, kösz hála érte
 ;D
Cím: RP Beszélgetoablak
Írta: Gamestar - 2010. Április 02. - 19:55:28
Véleményem szerint ez elég elavult alkotás...Már inkább úgy kivitelezném, hogy a feje felé írja a közelben lévoknek, mintha beszélne.
 
//-----------------------------------------------------------------
// Ez egy reális Rp beszélgetomódszer. A közelben lévo játékosok
// látják a játékos feje felett kiíródó szöveget, amit mond.
stock RPChat(senderid, const message[], color=0xFFFFFFAA, Float:drawdistance=60.0, time=10*1000)
{
SetPlayerChatBubble(senderid, message, color, drawdistance, time);
return 1;
}

 
RPChat(playerid, \"Sziasztok!\");
Cím: RP Beszélgetoablak
Írta: Xlavier - 2010. Április 02. - 21:21:45
Te vagy a Mester, te tudodXD
Amugy jó ötlet, kösz a modositást.
Van benne egy kis wow filingXD
Cím: RP Beszélgetoablak
Írta: Vampesz - 2010. Április 02. - 23:26:07
Idézetet írta: Gamestar date=1270230928\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"518\" data-ipsquote-contentclass=\"forums_Topic
Véleményem szerint ez elég elavult alkotás...Már inkább úgy kivitelezném, hogy a feje felé írja a közelben lévoknek, mintha beszélne.
 
//-----------------------------------------------------------------
// Ez egy reális Rp beszélgetomódszer. A közelben lévo játékosok
// látják a játékos feje felett kiíródó szöveget, amit mond.
stock RPChat(senderid, const message[], color=0xFFFFFFAA, Float:drawdistance=60.0, time=10*1000)
{
SetPlayerChatBubble(senderid, message, color, drawdistance, time);
return 1;
}

 
RPChat(playerid, \"Sziasztok!\");
 
Lehet, h vki offnak veszi majd azért elore is sorry.

Én véleményem szerint még benyomnák egy Chat animot is hozzá akár :P
Cím: RP Beszélgetoablak
Írta: Xlavier - 2010. Április 03. - 00:25:24
Szerintem nem Off, de nekem nem megy a fejem folé írás, mi lehet a hiba?
Írja le valaki mit kell tennem, hogy mutassa
Cím: RP Beszélgetoablak
Írta: ALIEN - 2010. Április 03. - 01:12:46
Te magadét nem látod!
Csak mások látják a tiédet.
Cím: RP Beszélgetoablak
Írta: Xlavier - 2010. Április 03. - 09:12:32
Oh, akkor rendben.
Esetleg be lehet állitani, hogy én is lássam?
Cím: RP Beszélgetoablak
Írta: ALIEN - 2010. Április 03. - 09:23:10
Szerintem nem leheséges...
Minthogy az életedet, páncélodat, nevedet se látod magadnak.
Cím: RP Beszélgetoablak
Írta: Gamestar - 2010. Április 03. - 09:41:09
new Text3D:tmp3dtext[MAX_PLAYERS]={Text3D:(-1),...};
new player_timer[MAX_PLAYERS]={(-1),...};
forward Chat3D(x);
public OnPlayerText(playerid, text[])
{
new Float:x;
new Float:y;
new Float:z;
GetPlayerPos(playerid, x, y, z);
if(tmp3dtext[playerid] != Text3D:(-1)) {
Delete3DTextLabel(tmp3dtext[playerid]);
}
if(player_timer[playerid] != (-1)) {
    KillTimer(player_timer[playerid]);
}
tmp3dtext[playerid]=Create3DTextLabel(text, 0x6495EDFF, x, y, z+0.7, 50.0, 0);
//Attach3DTextLabelToPlayer(tmp3dtext[playerid],playerid,0.0, 0.0, 0.7);
    player_timer[playerid]=SetTimerEx(\"Chat3D\", 10*1000, 0, \"i\", playerid);
return 1;
}
public Chat3D(x)
{
    if(tmp3dtext
  • != Text3D:(-1)) {

Delete3DTextLabel(tmp3dtext
  • );

}
}
Cím: RP Beszélgetoablak
Írta: GroX - 2010. Április 03. - 13:45:06
Idézetet írta: ALIEN date=1270279390\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"518\" data-ipsquote-contentclass=\"forums_Topic
Szerintem nem leheséges...
Minthogy az életedet, páncélodat, nevedet se látod magadnak.
 


 
new Text3D:tmp3dtext[MAX_PLAYERS]={Text3D:(-1),...};
new player_timer[MAX_PLAYERS]={(-1),...};
forward Chat3D(x);
public OnPlayerText(playerid, text[])
{
new Float:x;
new Float:y;
new Float:z;
GetPlayerPos(playerid, x, y, z);
if(tmp3dtext[playerid] != Text3D:(-1)) {
Delete3DTextLabel(tmp3dtext[playerid]);
}
if(player_timer[playerid] != (-1)) {
    KillTimer(player_timer[playerid]);
}
tmp3dtext[playerid]=Create3DTextLabel(text, 0x6495EDFF, x, y, z+0.7, 50.0, 0);
//Attach3DTextLabelToPlayer(tmp3dtext[playerid],playerid,0.0, 0.0, 0.7);
    player_timer[playerid]=SetTimerEx(\"Chat3D\", 10*1000, 0, \"i\", playerid);
return 1;
}
public Chat3D(x)
{
    if(tmp3dtext
  • != Text3D:(-1)) {

Delete3DTextLabel(tmp3dtext
  • );

}
}

 

[/quote]
Tudod manapság minden lehetséges, max egykét szerver oldali dolog nem. Csak tudni kell 8)
Cím: RP Beszélgetoablak
Írta: Xlavier - 2010. Április 03. - 14:07:59
nagyon szépen köszönöm. sokat segített.
Cím: RP Beszélgetoablak
Írta: Vampesz - 2010. Április 06. - 08:54:29
tudtommal nem :/
Cím: RP Beszélgetoablak
Írta: negyes44 - 2010. Május 16. - 21:35:11
Nekem gond ven vele :S Nemismeri a függvényeket, hibét ír pl az RP sre, miylen függvénykönyvtár kell neki?
Cím: RP Beszélgetoablak
Írta: Lömpi - 2010. Május 17. - 17:07:17
Idézetet írta: negyes44 date=1274038511\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"518\" data-ipsquote-contentclass=\"forums_Topic
Nekem gond ven vele :S Nemismeri a függvényeket, hibét ír pl az RP sre, miylen függvénykönyvtár kell neki?
 

stock Chat_SendRolePlayFormatToPlayer(giveid,playerid,str[],color=0xFFFFFFAA)
{
// Tárolók létrehozása
new name[MAX_PLAYER_NAME],
    formats[128];
// Név tárolása
GetPlayerName(playerid,name,sizeof name);
// Üzenet megformázása
format(formats,sizeof formats,\"%s mondja neked: %s\",name,str);
// Üzenet elküldése
SendClientMessage(giveid,color,formats);
// Visszatérés
return true;
}

 
?
Cím: RP Beszélgetoablak
Írta: negyes44 - 2010. Május 17. - 18:36:55
De ezt a modomba hova kell rakonm?? az OnPlayerCommandText alá? mert ha odarakom a következot írja:
 

error 029: invalid expression, assumed zero
error 017: undefined symbol \"Chat_SendRolePlayFormatToPlayer\"
warning 215: expression has no effect
error 001: expected token: \";\", but found \")\"
fatal error 107: too many error messages on one line

 
És ezt erre a sora:
 

stock Chat_SendRolePlayFormatToPlayer(giveid,playerid,str[],color=0xFFFFFFAA)

 
De ha berakom az OnPlayerConnect alá akkor nincs hiba de a játékba nem megy.
Cím: RP Beszélgetoablak
Írta: Iceaac - 2010. Május 17. - 22:44:37
A mód legaljára írd.