GTAOnline.net
IV : Multiplayer (iv:mp) => Scripting IV:MP [Squirrel center] => Discussion démarrée par: Gilux le 28 Avril 2011, 10:32:49
-
Salut,
J'ai téléchargé EasyINI (http://forum.iv-multiplayer.com/index.php/topic,1053.msg12087.html#msg12087 (http://forum.iv-multiplayer.com/index.php/topic,1053.msg12087.html#msg12087)), et j'ai commencé à coder un register system.
Hier, en faisant des fichiers de test, tout a bien fonctionné, mais aujourd'hui, le compilateur ne veut plus rien savoir, et je ne sais pas pourquoi ;D
Voici la fonction onScriptInit :
function onScriptInit()
{
log("GTASL IV:MP, ouvert !");
dofile("scripts/easyini.nut");
local ini = EasyINI("files/test.ini");
ini.setKey("info", "Health", "50");
AddRule("Gamemode", "Gilux's Freeroam 0.1 Alpha");
AddRule("Weather", "0");
return 1;
}
L'erreur retournée est "ERROR : Newline in a constant" sur la ligne "local ini = EasyINI("files/test.ini");
Merci d'avance si quelqu'un a une solution ;)
++
-
Étrange, j'ai tésté ton script et il marche bien.
Tu t'es peut être trompé de fichier, l'erreur t'indique un autre fichier, non ? Tu aurais probablement mal fermé un const ou oublié un ; .
Donnes moi le message d'erreur entier.
Et AddRule n'existe pas, c'est addRule ;)
-
Peut-être que le script n'est pas chargé par le dofile.
( ps: Cool GTASL sur IVMP =D )
-
Re, voici le script entier :
// GTA Stunt Life IV:MP.
// Version 0.1 Alpha.
const White = 0xFFFFFFFF;
const Blue = 0x0000FFFF;
const Red = 0xFF0000FF;
const Green = 0x00FF00FF;
function onScriptInit()
{
log("GTASL IV:MP, ouvert !");
dofile("scripts/easyini.nut");
local ini = EasyINI("files/test.ini");
AddRule("Gamemode", "Gilux's Freeroam 0.1 Alpha");
return 1;
}
addEvent("scriptInit", onScriptInit);
function onScriptExit()
{
return 1;
}
addEvent("scriptExit", onScriptExit);
function onPlayerConnect(playerid)
{
sendPlayerMessage(playerid,"Bienvenue" getPlayerName(playerid) ", merci de te [FF0000FF]connecter (/login)[FFFFFFFF] ou de [FF0000FF]t'inscrire (/register)[FFFFFFFF]!",White,true);
return 1;
}
addEvent("playerConnect", onPlayerConnect);
function onPlayerDisconnect(playerid, reason)
{
return 1;
}
addEvent("playerDisconnect", onPlayerDisconnect);
function onPlayerCommand(playerid, command)
{
local cmd = split(command, " ");
return 0;
}
addEvent("playerCommand", onPlayerCommand);
function onPlayerDeath(playerid, killerid)
{
return 1;
}
addEvent("playerDeath", onPlayerDeath);
easyini.nut est bien dans le bon dossier (scripts/easyini.nut). J'ai aussi essayé d'ajouter <script>easyini.nut</script> dans config.xml
Le message d'erreur est le suivant :
[2011-04-28 13:21:49] Webserver started on port xxxx
[2011-04-28 13:21:49] Loading scripts
[2011-04-28 13:21:49] ----------------
[2011-04-28 13:21:49] Loading script gtasl.nut
[2011-04-28 13:21:49] GTASL IV:MP, ouvert !
[2011-04-28 13:21:49] AN ERROR HAS OCCURED [newline in a constant]
[2011-04-28 13:21:49] CALLSTACK
[2011-04-28 13:21:49] *FUNCTION [onScriptInit()] C:UsersGiluxDesktopIV-MP Serverscripts/gtasl.nut line [13]
[2011-04-28 13:21:49] LOCALS
[2011-04-28 13:21:49] [this] TABLE
[2011-04-28 13:21:49] Loaded script gtasl.nut.
[2011-04-28 13:21:49]
[2011-04-28 13:21:49] ---------------------------------------------------------
[2011-04-28 13:21:49] IV:MP 0.1 T3 R1 (Apr 16 2011, 14:24:18) Server Started
[2011-04-28 13:21:49] Copyright (C) 2009-2011 IV:MP Team
[2011-04-28 13:21:49] Port: xxxx
[2011-04-28 13:21:49] Max Players: 32
[2011-04-28 13:21:49] ---------------------------------------------------------
[2011-04-28 13:21:49]
Je sais que ça marche, je vais regarder si je n'aurais pas modifié easyini.nut sans faire exprès et je vous donne des nouvelles :)
EDIT : C'est bon =D
C'était une ligne qui était commentée dans l'include, j'ai du taper Ctrl Q au lieu de Ctrl S :ninja
Merci pour les aides x)