GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: imerdu91 le 29 Mai 2010, 13:48:41
-
Bonjour chers Scripteur/Joueurs.
Voila depuis quelques mois maintenant, j'ai ouvert un serveur sur la base du LARp, je l'ai entièrement refait a mon goût etc, sa n'a rien d'une copie simple et j'ai énormément appris en SA:MP avant de commencer.
Mais maintenant une question importante me vient:
Lorsqu'on écrit il y a un certain moment ou on ne voit plus se qu'on écrit puisque une sorte de limite est dépasser.
Mais cette limite est plus petite que d'autre serveur donc je pense qu'on peut l'agrandir voir mettre un retour a la ligne quand c'est trop long, j'ai essayer de chercher et de comprendre mais sans fin.
Donc je me tourne vers vous pour savoir si vous savez comment augmenter la limite ou faire un retour a la ligne.
Merci d'avance et bon jeu.
-
Augmente la taille de la variable qui reçoit le texte que tu formate =)
-
J'ai limite envie de dire que tu me parle en langage codé :p
Non sérieux, je pense savoir se que tu veut dire mais je ne sait pas quel est cette variable, esque String[256] peut etre en rapport avec sa ?
des fois je voit log[36] des truc comme sa.
-
Donne nous ton OnPlayerText(playerid,text[])
-
Début
public OnPlayerText(playerid, text[])
{
new giver[MAX_PLAYER_NAME];
new sendername[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new tmp[256];
new string[256];
new giveplayerid;
Fin, la il s'agit de quand le joueur parle dans le jeu
if (realchat)
{
if(gPlayerLogged[playerid] == 0)
{
return 0;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
if(!IsPlayerInAnyVehicle(playerid))
{
if(PlayerInfo[playerid][pMaskuse] == 1)
{
format(string, sizeof(string), "Etrangé dit: %s", text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
SetPlayerChatBubble(playerid,text,COLOR_WHITE,35.0,2500);
}
else if(bailloner[playerid] == 1)
{
format(string, sizeof(string), "%s Dit: Hmmmmm hmmmmmm mmmmm", sendername);
ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
else
{
format(string, sizeof(string), "%s dit: %s", sendername, text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
}
else
{
new carid = GetPlayerVehicleID(playerid);
new pveh = GetVehicleModel(GetPlayerVehicleID(playerid));
if(IsABike(carid) || IsAOBike(carid) || IsAPizzabike(carid) || IsAPlane(carid) || IsABoat(carid) || IsASweeper(carid) || IsAHarvest(carid) || IsADrugHarvest(carid) || IsATank(carid) || pveh == 523 || pveh == 480 || pveh == 567 || pveh == 533 || pveh == 555 || pveh == 539 || pveh == 572 || pveh == 571 || pveh == 530 || pveh == 457 || pveh == 575 || pveh == 536 || pveh == 424)
{
if(PlayerInfo[playerid][pMaskuse] == 1)
{
format(string, sizeof(string), "Etrangé dit: %s", text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
SetPlayerChatBubble(playerid,text,COLOR_WHITE,35.0,2500);
}
else if(bailloner[playerid] == 1)
{
format(string, sizeof(string), "%s Dit: Hmmmmm hmmmmmm mmmmm", sendername);
ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
else
{
format(string, sizeof(string), "%s dit: %s", sendername, text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
}
else
{
if(VehicleWindows[GetPlayerVehicleID(playerid)] == 0)
{
if(PlayerInfo[playerid][pMaskuse] == 1)
{
format(string, sizeof(string), "(Fenêtre Fermée) Etrangé dit: %s", text);
ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
else if(bailloner[playerid] == 1)
{
format(string, sizeof(string), "(Fenêtre fermée) %s Dit: Hmmmmm hmmmmmm mmmmm", sendername);
ProxDetector(3.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
else
{
format(string, sizeof(string), "(Fenêtre Fermée) %s dit: %s", sendername, text);
ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
}
else
{
if(PlayerInfo[playerid][pMaskuse] == 1)
{
format(string, sizeof(string), "(Fenêtre Ouverte) Etrangé dit: %s", text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
SetPlayerChatBubble(playerid,text,COLOR_WHITE,35.0,2500);
}
else if(bailloner[playerid] == 1)
{
format(string, sizeof(string), "(Fenêtre ouverte) %s Dit: Hmmmmm hmmmmmm mmmmm", sendername);
ProxDetector(10.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
SetPlayerChatBubble(playerid,text,COLOR_WHITE,35.0,2500);
}
else
{
format(string, sizeof(string), "(Fenêtre Ouverte) %s dit: %s", sendername, text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
}
}
}
}
return 0;
}
return 1;
}
Escusez moi pour la longueur, j'avoue n'avoir pas pris le temp de le mette sur un pastebin.
J'espere qu'il y a se don tu a besoin
-
Augmente la taille de string
-
le mieux ces de faire un retour a la ligne car sa permet a ce qui sont en petite résolution comme moi de voir le message.
Mais bon moi ce que j'avait fait pour mon RRace n'est pas super :s
-
le new string est a 256 sa sert a rien ni de l'augmenter ni qu'il soit a 256 car le chat il me semble est limiter a 140 caractere il me semble
-
Pourtant beaucoup d'autre serveur ont une limite de ligne qui va beaucoup plus loin,
Je vais essayer d'augmenter et je vous en dirait des nouvelle ;)
-
je ne voit pas comment cela est possible a moin de cree ton propre chat avec un TD
-
moi j'avait fait sa pour mon RRace :
for(new j=0;j<50;j++)
{
if(j == 12||j == 25||j == 35)
{
format(CInfo,sizeof(CInfo), "%s\n%s",Info,strtok(templine,i));
}
else
{
format(CInfo,sizeof(CInfo), "%s %s",Info,strtok(templine,i));
}
}en sachant que je recuperais la description de la course dans le fichier de la course :P
-
il parle de la callback OnPlayerText
-
Pourtant beaucoup d'autre serveur ont une limite de ligne qui va beaucoup plus loin,
Je vais essayer d'augmenter et je vous en dirait des nouvelle ;)
Non c'est impossible, même le client est limité à 128 caractères.