I work on this script. I found error syntax. I tired fix it.
script of server.cs
function sendLockedSKAchievementToClient(%client, %bitmapImage, %name, %text, %cat)
{
%name = StripMLControlChars(%name);
%text = StripMLControlChars(%text);
if(%name $= "")
return echo("Missing Var! (sendSKAchievementToClient)");
if(%cat $= "")
return echo("Missing category! (sendSKAchievementToClient)");
if(!%client.hasSKAchievementsMod)
return;
commandtoclient(%client, 'AddSKAch', %bitmapImage, %name, %text, %cat);
%client.SKAchievements[%name] = true;
}
function unlockClientAchievement(%client, %name)
{
%name = StripMLControlChars(%name);
if(%name $= "")
return echo("Missing Var! (unlockClientSKAchievement)");
if(%client.unLockedSKAchievements[%name] || !%client.hasSKAchievementsMod)
return;
commandtoclient(%client, 'UnlockSKAch', %name);
messageAll('MsgAdminForce', '\c3%1 \c6completed the <color:CC0000>%2 \c6Speedkart Achievement!', %client.name, %name);
%client.unLockedAchievements[%name] = true;
%file = new FileObject();
%file.openForAppend("config/Speedkart Achievements/saves/"@%client.BL_ID@".txt");
%file.writeLine(%name);
%file.close();
%file.delete();
}
function loadClientSKAchievements(%client)
{
if(!%client.hasSKAchievementsMod)
return;
%file = new FileObject();
%file.openForRead("config/Speedkart Achievements/saves/"@%client.BL_ID@".txt");
while(!%file.isEOF()) {
%line = %file.readLine();
if(%line !$= "") {
%data['Name'] = getField(%line, 0);
%client.unLockedSKAchievements[%data['Name']] = true;
commandtoclient(%client, 'UnlockSKAch', %data['Name']);
}
}
%file.close();
%file.delete();
}
function clearClientSKAchievements(%client)
{
if(!%client.hasSKAchievementsMod)
return;
commandtoclient(%client, 'clearSKAch');
}
package SKAchClientEnterGame {
function GameConnection::AutoAdminCheck(%client)
{
commandtoClient(%client, 'IHaveSpeedkartAchievementsMod');
return Parent::AutoAdminCheck(%client);
}
function gameConnection::onClientEnterGame(%this)
{
parent::onClientEnterGame(%this);
messageClient(%this, '', "\c3Server is running Furling's Speedkart Achievements Mod.");
clearClientSKAchievements(%this);
sendSKAchievements(%this);
loadClientSKAchievements(%this);
}
package SKAchStuff { /////THIS IS ERROR SYNTAX /////
function sendSKAchievements(%client)
{
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "1,000 Studs", "Speedkart");
sendLockedSkAchievementToClient(%client, "star", "Drive long distance", "5,000 Studs", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "10,000 Studs", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "20,000 Studs", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "30,000 Studs", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "50,000 Studs", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "100,000 Studs", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "10 Mintues", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "20 Mintues", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "30 Mintues", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "40 Mintues", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "60 Mintues", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "2 Hour", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Drive long time", "5 Hour", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Explosion kart", "10 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Explosion kart", "20 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Explosion kart", "30 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Explosion kart", "100 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "star", "Explosion kart", "1,000 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "award", "You has won", "10 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "award", "You has won", "20 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "award", "You has won", "30 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "award", "You has won", "40 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "award", "You has won", "50 Time", "Speedkart");
sendLockedSKAchievementToClient(%client, "award", "You has won", "100 Time", "Speedkart");
}
////////////////////// IGNORE THIS BELOW ////////////////////////////////////////////////////////////
if(!%client.unLockedAchievements["Fallure"] && %damageType $= $DamageType::Fall)
{
%client.deathCount++;
if(%client.deathCount == 10) {
unlockClientAchievement(%client, "Fallure");
}
}
parent::onDeath(%this, %killerPlayer, %killer, %damageType, %damageLoc);
}
function Armor::damage(%this, %obj, %sourceObject, %position, %damage, %damageType)
{
if(%damageType $= $DamageType::Lava)
{
unlockClientSKAchievement(%obj.client, "I Think it Burns");
}
parent::damage(%this, %obj, %sourceObject, %position, %damage, %damageType);
}
function serverCmdPlantBrick(%client)
{
parent::serverCmdPlantBrick(%client);
if(%client.brickgroup.getcount() >= 100)
{
unlockClientSKAchievement(%client, "My First 100");
}
}
////////////////////// IGNORE THIS ABOVE////////////////////////////////////////////////////////////
function serverCmdIHaveSpeedkartAchievementsMod(%client)
{
%client.hasSKAchievementsMod = true;
}
activatepackage(SKAchClientEnterGame);
activatepackage(SKAchStuff);
Error Syntax:
Client checking Add-On: Script_SpeedKart_Achievements
Loading Add-On: Script_SpeedKart_Achievements (CRC:823718198)
Add-Ons/Script_SpeedKart_Achievements/Server.cs Line: 85 - Syntax error.
>>> Some error context, with ## on sides of error halt:
^^parent::onClientEnterGame(%this);
^^messageClient(%this, '', "\c3Server is running Furling's Speedkart Achievements Mod.");
clearClientSKAchievements(%this);
sendSKAchievements(%this);
loadClientSKAchievements(%this);
}
package ##S##KAchStuff { /////THIS IS ERROR SYNTAX /////
function sendSKAchievements(%client)
{
sendLockedSKAchievementToClient(%client, "star", "Drive long distance", "1,000 Studs", "Speedkart");
sendLockedSkAchievementToClient(%client, "star", "Drive long distance", "5,000 Studs", "Speedkart");
>>> Error report complete.
ADD-ON "Script_SpeedKart_Achievements" CONTAINS SYNTAX ERRORS