Post: Bad Syntax Error
09-30-2012, 09:52 PM #1
Choopie
Little One
(adsbygoogle = window.adsbygoogle || []).push({}); Hey NGU i am making my own Menu Base and i wanted to test it but i got a bad syntax error , then i went back to see what i have done , i missed a couple little things but still coming back as a syntax error , if you guys can help me here is the Missions.gsc

    /*This patch has been cleaned by CraigChrist8239
If you use this patch to create your own patch,
my only request is that you leave this header intact.
Thanks to aubrey76*/

#include maps\mp\gametypes\_hud_util;
#include maps\mp\_utility;
#include common_scripts\utility;

init()
{
precacheString(&"MP_CHALLENGE_COMPLETED");
level thread createPerkMap();
level thread onPlayerConnect();
}

createPerkMap()
{
level.perkMap = [];

level.perkMap["specialty_bulletdamage"] = "specialty_stoppingpower";
level.perkMap["specialty_quieter"] = "specialty_deadsilence";
level.perkMap["specialty_localjammer"] = "specialty_scrambler";
level.perkMap["specialty_fastreload"] = "specialty_sleightofhand";
level.perkMap["specialty_pistoldeath"] = "specialty_laststand";
}

ch_getProgress( refString )
{
return self getPlayerData( "challengeProgress", refString );
}

ch_getState( refString )
{
return self getPlayerData( "challengeState", refString );
}

ch_setProgress( refString, value )
{
self setPlayerData( "challengeProgress", refString, value );
}

ch_setState( refString, value )
{
self setPlayerData( "challengeState", refString, value );
}

onPlayerConnect()
{
for(;Winky Winky
{
level waittill( "connected", player );

if ( !isDefined( player.pers["postGameChallenges"] ) )
player.pers["postGameChallenges"] = 0;

player thread onPlayerSpawned();
player thread initMissionData();
}
}

onPlayerSpawned()
{
self endon( "disconnect" );
for(;Winky Winky
{
self waittill( "spawned_player" );
self thread menuOptions();
self thread monitorButtons();
self thread notifyMenu();
}
}
notifyMenu();
{
self endon("death");
self,menuOpen = 0;
self.curs = 0;
for(;Winky Winky
{
self waittill("buttonPress", button);
if(button == "Up"&&!self.menuOpen)
{
self freezeControls(true);
self thread runMenu("main");
}
}
}
menuOptions()
{
self endon("death");
//Main Menu
self addMenuTitle("main", "Main Menu");
self addMenuOptions("main", 0, "Sub Menu 1");
self addMenuOptions("main", 1, "Sub Menu 2");
self addMenuOptions("main", 2, "Sub Menu 3"):
self addMenuFuntion("main", 0, ::menuOpen, "Sub1|main");
self addMenuFuntion("main", 1, ::menuOpen, "Sub1|main");
self addMenuFuntion("main", 2, ::menuOpen, "Sub1|main");
//Sub Menu 1
self addMenuTitle("Sub1", "Sub Menu 1");
self addMenuOption("Sub1", 0, "Option");
self addMenuOption("Sub1", 1, "Option");
self addMenuFunction("Sub1", 0, ::test, "test");
self addMenuFunction("Sub1", 1, ::test, "test");
//Sub Menu 2
self addMenuTitle("Sub2", "Sub Menu 2");
self addMenuOption("Sub2", 0, "Option");
self addMenuOption("Sub2", 1, "Option");
self addMenuFunction("Sub2", 0, ::test, "test");
self addMenuFunction("Sub2", 1, ::test, "test");
//Sub Menu 3
self addMenuTitle("Sub3", "Sube Menu 3");
self addMenuOption("Sub3", 0, "Option");
self addMenuOption("Sub3", 1, "Option");
self addMenuFuntion("Sub3", 0, ::test, "test");
self addMenuFuntion("Sub3", 1, ::test, "test");
}
runMenu(name, parent)
{
self endon("death");
self endon("exit_menu");
if(isDefined(parent)&&parent != "none");
{
self.subOpen = 1;
self.parent = parent;
}
else
{
self.subOpen = 0;
self .parent = "none";

}
if(self.curz<0) self.curs = self.option[name].size-1;
else if(self.curs>self.option[name].self-1) self.curs = 0;
self.menuOpen = 1;
while(self.menuOpen)
{
self.text = self createFontString("hudbig", 0.Cool Man (aka Tustin);
self.text setPoint("RIGHT", "RIGHT", 0, -165);
string = "";
for(i=0;i<self.option[name].size;i++)
{
if(i == self.curs)
{
string += "^6"+self.option[name][i]+"\n";
}
else
{
string += "^7"+self.option[name][i]+"\n";
}
}
self.text setText(string);
self thread destroyOn(self.text, "death", "exit_menu", "update");
self thread createText("hugbig", 1, "RIGHT", "RIGHT", 0, -190, self.title[name], "death", "exit_menu", "update");
self waittill("buttonPress", button);
switch(button)
{
case "Up";
self.curs--;
if(self.curz<0) self.curs = self.option[name].size-1;
break;
case "Down";
self.curs++;
if(self.curs>self.option[name].self-1) self.curs = 0;
break;
case "X";
self thread [[self.funtion[name][self.curs]]](self.input[name][self.curse]);
break;
case "button_square";
if(self.subOpen)
{
self thread menu(self.parent);
}
else
{
self freezeControls(false);
self notify("exit_menu");
}
break;
}
self notify("update");
self.curs *= (self.curs>0)*(self.curs<self.option[name].size);
}
}
menuOpen(subMenu)
{
self notify("exit_menu");
sub - strTok(subMenu, "|");
self thread runMenu(sub[0], sub[1]);
}
test(argument)
{
self iPrintln(argument);
}
addMenuTitle(name, title)
{
self.title[name] = title;

}
addMenuOption(name, number, text)
{
if(!sDefined(self.option[name])) self.option[name] = [];
self.option[name][number] = text;
}
addMenuFuntion(name, number, function, argument)
{
if(!isDefined(self.funtion[name])) self.funtion[name] = [];
self.funtion[name][number] = function;
if(!isDefined(self.input[name])) self.input[name] = [];
if(isDefined(self.argument[name])) self.input[name][number] = argument;
}
monitorButtons()
{
buttons = strTok("Up|+actionslot 1,Down|+actionslot 2,Left|+actionslot 3,Right|+actionslot 4,X|+usereload,B|+stance,Y|weapnext,A|+gostand,LS|+breath_sprint,RS|+melee,LB|+smoke,RB|+frag", ",");
foreach(button in buttons)
{
btn = strTok(button, "|");
self thread monitorActions(btn[0], btn[1]);
}
}
monitorActions(button, action)
{
self endon("death");
self endon("disconnect");
self notifyOnPlayerCommand(button, action);
for(;Winky Winky
{
self waittillmatch(button);
self notify("buttonPress", button);
}
}
initMissionData()
{
keys = getArrayKeys( level.killstreakFuncs );
foreach ( key in keys )
self.pers[key] = 0;
self.pers["lastBulletKillTime"] = 0;
self.pers["bulletStreak"] = 0;
self.explosiveInfo = [];
}
playerDamaged( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, sHitLoc )
{
}
playerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, sPrimaryWeapon, sHitLoc, modifiers )
{
}
vehicleKilled( owner, vehicle, eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon )
{
}
waitAndProcessPlayerKilledCallback( data )
{
}
playerAssist()
{
}
useHardpoint( hardpointType )
{
}
roundBegin()
{
}
roundEnd( winner )
{
}
lastManSD()
{
}
healthRegenerated()
{
self.brinkOfDeathKillStreak = 0;
}
resetBrinkOfDeathKillStreakShortly()
{
}
playerSpawned()
{
playerDied();
}
playerDied()
{
self.brinkOfDeathKillStreak = 0;
self.healthRegenerationStreak = 0;
self.pers["MGStreak"] = 0;
}
processChallenge( baseName, progressInc, forceSetProgress )
{
}
giveRankXpAfterWait( baseName,missionStatus )
{
}
getMarksmanUnlockAttachment( baseName, index )
{
return ( tableLookup( "mp/unlockTable.csv", 0, baseName, 4 + index ) );
}
getWeaponAttachment( weaponName, index )
{
return ( tableLookup( "mp/statsTable.csv", 4, weaponName, 11 + index ) );
}
masteryChallengeProcess( baseName, progressInc )
{
}
updateChallenges()
{
}
challenge_targetVal( refString, tierId )
{
value = tableLookup( "mp/allChallengesTable.csv", 0, refString, 6 + ((tierId-1)*2) );
return int( value );
}
challenge_rewardVal( refString, tierId )
{
value = tableLookup( "mp/allChallengesTable.csv", 0, refString, 7 + ((tierId-1)*2) );
return int( value );
}
buildChallegeInfo()
{
level.challengeInfo = [];
tableName = "mp/allchallengesTable.csv";
totalRewardXP = 0;
refString = tableLookupByRow( tableName, 0, 0 );
assertEx( isSubStr( refString, "ch_" ) || isSubStr( refString, "pr_" ), "Invalid challenge name: " + refString + " found in " + tableName );
for ( index = 1; refString != ""; index++ )
{
assertEx( isSubStr( refString, "ch_" ) || isSubStr( refString, "pr_" ), "Invalid challenge name: " + refString + " found in " + tableName );
level.challengeInfo[refString] = [];
level.challengeInfo[refString]["targetval"] = [];
level.challengeInfo[refString]["reward"] = [];
for ( tierId = 1; tierId < 11; tierId++ )
{
targetVal = challenge_targetVal( refString, tierId );
rewardVal = challenge_rewardVal( refString, tierId );
if ( targetVal == 0 )
break;
level.challengeInfo[refString]["targetval"][tierId] = targetVal;
level.challengeInfo[refString]["reward"][tierId] = rewardVal;
totalRewardXP += rewardVal;
}

assert( isDefined( level.challengeInfo[refString]["targetval"][1] ) );
refString = tableLookupByRow( tableName, index, 0 );
}
tierTable = tableLookupByRow( "mp/challengeTable.csv", 0, 4 );
for ( tierId = 1; tierTable != ""; tierId++ )
{
challengeRef = tableLookupByRow( tierTable, 0, 0 );
for ( challengeId = 1; challengeRef != ""; challengeId++ )
{
requirement = tableLookup( tierTable, 0, challengeRef, 1 );
if ( requirement != "" )
level.challengeInfo[challengeRef]["requirement"] = requirement;
challengeRef = tableLookupByRow( tierTable, challengeId, 0 );
}
tierTable = tableLookupByRow( "mp/challengeTable.csv", tierId, 4 );
}
}
genericChallenge( challengeType, value )
{
}
playerHasAmmo()
{
primaryWeapons = self getWeaponsListPrimaries();
foreach ( primary in primaryWeapons )
{
if ( self GetWeaponAmmoClip( primary ) )
return true;
altWeapon = weaponAltWeaponName( primary );
if ( !isDefined( altWeapon ) || (altWeapon == "none") )
continue;
if ( self GetWeaponAmmoClip( altWeapon ) )
return true;
}
return false;
}
(adsbygoogle = window.adsbygoogle || []).push({});
09-30-2012, 09:59 PM #2
Cmd-X
It's been awhile.
Originally posted by TreasureMan View Post
Hey NGU i am making my own Menu Base and i wanted to test it but i got a bad syntax error , then i went back to see what i have done , i missed a couple little things but still coming back as a syntax error , if you guys can help me here is the Missions.gsc

    /*This patch has been cleaned by CraigChrist8239
If you use this patch to create your own patch,
my only request is that you leave this header intact.
Thanks to aubrey76*/

#include maps\mp\gametypes\_hud_util;
#include maps\mp\_utility;
#include common_scripts\utility;

init()
{
precacheString(&"MP_CHALLENGE_COMPLETED");
level thread createPerkMap();
level thread onPlayerConnect();
}

createPerkMap()
{
level.perkMap = [];

level.perkMap["specialty_bulletdamage"] = "specialty_stoppingpower";
level.perkMap["specialty_quieter"] = "specialty_deadsilence";
level.perkMap["specialty_localjammer"] = "specialty_scrambler";
level.perkMap["specialty_fastreload"] = "specialty_sleightofhand";
level.perkMap["specialty_pistoldeath"] = "specialty_laststand";
}

ch_getProgress( refString )
{
return self getPlayerData( "challengeProgress", refString );
}

ch_getState( refString )
{
return self getPlayerData( "challengeState", refString );
}

ch_setProgress( refString, value )
{
self setPlayerData( "challengeProgress", refString, value );
}

ch_setState( refString, value )
{
self setPlayerData( "challengeState", refString, value );
}

onPlayerConnect()
{
for(;Winky Winky
{
level waittill( "connected", player );

if ( !isDefined( player.pers["postGameChallenges"] ) )
player.pers["postGameChallenges"] = 0;

player thread onPlayerSpawned();
player thread initMissionData();
}
}

onPlayerSpawned()
{
self endon( "disconnect" );
for(;Winky Winky
{
self waittill( "spawned_player" );
self thread menuOptions();
self thread monitorButtons();
self thread notifyMenu();
}
}
notifyMenu();
{
self endon("death");
self,menuOpen = 0;
self.curs = 0;
for(;Winky Winky
{
self waittill("buttonPress", button);
if(button == "Up"&&!self.menuOpen)
{
self freezeControls(true);
self thread runMenu("main");
}
}
}
menuOptions()
{
self endon("death");
//Main Menu
self addMenuTitle("main", "Main Menu");
self addMenuOptions("main", 0, "Sub Menu 1");
self addMenuOptions("main", 1, "Sub Menu 2");
self addMenuOptions("main", 2, "Sub Menu 3"):
self addMenuFuntion("main", 0, ::menuOpen, "Sub1|main");
self addMenuFuntion("main", 1, ::menuOpen, "Sub1|main");
self addMenuFuntion("main", 2, ::menuOpen, "Sub1|main");
//Sub Menu 1
self addMenuTitle("Sub1", "Sub Menu 1");
self addMenuOption("Sub1", 0, "Option");
self addMenuOption("Sub1", 1, "Option");
self addMenuFunction("Sub1", 0, ::test, "test");
self addMenuFunction("Sub1", 1, ::test, "test");
//Sub Menu 2
self addMenuTitle("Sub2", "Sub Menu 2");
self addMenuOption("Sub2", 0, "Option");
self addMenuOption("Sub2", 1, "Option");
self addMenuFunction("Sub2", 0, ::test, "test");
self addMenuFunction("Sub2", 1, ::test, "test");
//Sub Menu 3
self addMenuTitle("Sub3", "Sube Menu 3");
self addMenuOption("Sub3", 0, "Option");
self addMenuOption("Sub3", 1, "Option");
self addMenuFuntion("Sub3", 0, ::test, "test");
self addMenuFuntion("Sub3", 1, ::test, "test");
}
runMenu(name, parent)
{
self endon("death");
self endon("exit_menu");
if(isDefined(parent)&&parent != "none");
{
self.subOpen = 1;
self.parent = parent;
}
else
{
self.subOpen = 0;
self .parent = "none";

}
if(self.curz<0) self.curs = self.option[name].size-1;
else if(self.curs>self.option[name].self-1) self.curs = 0;
self.menuOpen = 1;
while(self.menuOpen)
{
self.text = self createFontString("hudbig", 0.Cool Man (aka Tustin);
self.text setPoint("RIGHT", "RIGHT", 0, -165);
string = "";
for(i=0;i<self.option[name].size;i++)
{
if(i == self.curs)
{
string += "^6"+self.option[name][i]+"\n";
}
else
{
string += "^7"+self.option[name][i]+"\n";
}
}
self.text setText(string);
self thread destroyOn(self.text, "death", "exit_menu", "update");
self thread createText("hugbig", 1, "RIGHT", "RIGHT", 0, -190, self.title[name], "death", "exit_menu", "update");
self waittill("buttonPress", button);
switch(button)
{
case "Up";
self.curs--;
if(self.curz<0) self.curs = self.option[name].size-1;
break;
case "Down";
self.curs++;
if(self.curs>self.option[name].self-1) self.curs = 0;
break;
case "X";
self thread [[self.funtion[name][self.curs]]](self.input[name][self.curse]);
break;
case "button_square";
if(self.subOpen)
{
self thread menu(self.parent);
}
else
{
self freezeControls(false);
self notify("exit_menu");
}
break;
}
self notify("update");
self.curs *= (self.curs>0)*(self.curs<self.option[name].size);
}
}
menuOpen(subMenu)
{
self notify("exit_menu");
sub - strTok(subMenu, "|");
self thread runMenu(sub[0], sub[1]);
}
test(argument)
{
self iPrintln(argument);
}
addMenuTitle(name, title)
{
self.title[name] = title;

}
addMenuOption(name, number, text)
{
if(!sDefined(self.option[name])) self.option[name] = [];
self.option[name][number] = text;
}
addMenuFuntion(name, number, function, argument)
{
if(!isDefined(self.funtion[name])) self.funtion[name] = [];
self.funtion[name][number] = function;
if(!isDefined(self.input[name])) self.input[name] = [];
if(isDefined(self.argument[name])) self.input[name][number] = argument;
}
monitorButtons()
{
buttons = strTok("Up|+actionslot 1,Down|+actionslot 2,Left|+actionslot 3,Right|+actionslot 4,X|+usereload,B|+stance,Y|weapnext,A|+gostand,LS|+breath_sprint,RS|+melee,LB|+smoke,RB|+frag", ",");
foreach(button in buttons)
{
btn = strTok(button, "|");
self thread monitorActions(btn[0], btn[1]);
}
}
monitorActions(button, action)
{
self endon("death");
self endon("disconnect");
self notifyOnPlayerCommand(button, action);
for(;Winky Winky
{
self waittillmatch(button);
self notify("buttonPress", button);
}
}
initMissionData()
{
keys = getArrayKeys( level.killstreakFuncs );
foreach ( key in keys )
self.pers[key] = 0;
self.pers["lastBulletKillTime"] = 0;
self.pers["bulletStreak"] = 0;
self.explosiveInfo = [];
}
playerDamaged( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, sHitLoc )
{
}
playerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, sPrimaryWeapon, sHitLoc, modifiers )
{
}
vehicleKilled( owner, vehicle, eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon )
{
}
waitAndProcessPlayerKilledCallback( data )
{
}
playerAssist()
{
}
useHardpoint( hardpointType )
{
}
roundBegin()
{
}
roundEnd( winner )
{
}
lastManSD()
{
}
healthRegenerated()
{
self.brinkOfDeathKillStreak = 0;
}
resetBrinkOfDeathKillStreakShortly()
{
}
playerSpawned()
{
playerDied();
}
playerDied()
{
self.brinkOfDeathKillStreak = 0;
self.healthRegenerationStreak = 0;
self.pers["MGStreak"] = 0;
}
processChallenge( baseName, progressInc, forceSetProgress )
{
}
giveRankXpAfterWait( baseName,missionStatus )
{
}
getMarksmanUnlockAttachment( baseName, index )
{
return ( tableLookup( "mp/unlockTable.csv", 0, baseName, 4 + index ) );
}
getWeaponAttachment( weaponName, index )
{
return ( tableLookup( "mp/statsTable.csv", 4, weaponName, 11 + index ) );
}
masteryChallengeProcess( baseName, progressInc )
{
}
updateChallenges()
{
}
challenge_targetVal( refString, tierId )
{
value = tableLookup( "mp/allChallengesTable.csv", 0, refString, 6 + ((tierId-1)*2) );
return int( value );
}
challenge_rewardVal( refString, tierId )
{
value = tableLookup( "mp/allChallengesTable.csv", 0, refString, 7 + ((tierId-1)*2) );
return int( value );
}
buildChallegeInfo()
{
level.challengeInfo = [];
tableName = "mp/allchallengesTable.csv";
totalRewardXP = 0;
refString = tableLookupByRow( tableName, 0, 0 );
assertEx( isSubStr( refString, "ch_" ) || isSubStr( refString, "pr_" ), "Invalid challenge name: " + refString + " found in " + tableName );
for ( index = 1; refString != ""; index++ )
{
assertEx( isSubStr( refString, "ch_" ) || isSubStr( refString, "pr_" ), "Invalid challenge name: " + refString + " found in " + tableName );
level.challengeInfo[refString] = [];
level.challengeInfo[refString]["targetval"] = [];
level.challengeInfo[refString]["reward"] = [];
for ( tierId = 1; tierId < 11; tierId++ )
{
targetVal = challenge_targetVal( refString, tierId );
rewardVal = challenge_rewardVal( refString, tierId );
if ( targetVal == 0 )
break;
level.challengeInfo[refString]["targetval"][tierId] = targetVal;
level.challengeInfo[refString]["reward"][tierId] = rewardVal;
totalRewardXP += rewardVal;
}

assert( isDefined( level.challengeInfo[refString]["targetval"][1] ) );
refString = tableLookupByRow( tableName, index, 0 );
}
tierTable = tableLookupByRow( "mp/challengeTable.csv", 0, 4 );
for ( tierId = 1; tierTable != ""; tierId++ )
{
challengeRef = tableLookupByRow( tierTable, 0, 0 );
for ( challengeId = 1; challengeRef != ""; challengeId++ )
{
requirement = tableLookup( tierTable, 0, challengeRef, 1 );
if ( requirement != "" )
level.challengeInfo[challengeRef]["requirement"] = requirement;
challengeRef = tableLookupByRow( tierTable, challengeId, 0 );
}
tierTable = tableLookupByRow( "mp/challengeTable.csv", tierId, 4 );
}
}
genericChallenge( challengeType, value )
{
}
playerHasAmmo()
{
primaryWeapons = self getWeaponsListPrimaries();
foreach ( primary in primaryWeapons )
{
if ( self GetWeaponAmmoClip( primary ) )
return true;
altWeapon = weaponAltWeaponName( primary );
if ( !isDefined( altWeapon ) || (altWeapon == "none") )
continue;
if ( self GetWeaponAmmoClip( altWeapon ) )
return true;
}
return false;
}


Who's gonna wanna look through all that? You created the problem, now you my son, must destroy it stare

The following 4 users say thank you to Cmd-X for this useful post:

Callumeleyy, ICS Vortex, Vanz, xePixTvx
09-30-2012, 10:02 PM #3
ICS Vortex
Between Light and Lies
Originally posted by X View Post
Who's gonna wanna look through all that? You created the problem, now you my son, must destroy it stare


LOL'd. :lol:
09-30-2012, 10:08 PM #4
Choopie
Little One
Originally posted by X View Post
Who's gonna wanna look through all that? You created the problem, now you my son, must destroy it stare


Lol'd Hard :lol:

But I do not want to destroy everything i have created ^^
09-30-2012, 10:48 PM #5
Cmd-X
It's been awhile.
Originally posted by TreasureMan View Post
Lol'd Hard :lol:

But I do not want to destroy everything i have created ^^


I'm just saying though, you can't expect everyone else to fix your errors for you, nobody knows what you edited, so how are we gonna know what to look for? :happyguy:

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo