Beta 3 is finally ready for release, I'm very excited to see what you guys can do with some of it.
Here's what's new in Beta 3:
Bug Fixes - fixes for some bugs that were in vanilla X10. Those fixes are:
Underwater fog now retains its value when loading the map.
movedown fpi command - this command was missing from X10 and has been added.
AirMod recoil - the recoil system from AirMod has been added, you can change the recoil values either in the gunspec file or in the map editor.
If you change them in the gunspec, the keywords are:
recoily
recoilx
recoilycorrect
recoilxcorrect
zoomrecoily
zoomrecoilx
zoomrecoilycorrect
zoomrecoilxcorrect
FPI commands - I went through the commands that were in FPI editpad, the ones that weren't in X10 have been added. Those commands are:
plrsubhealth=
plrsethealth=
newjumpheight=
setentityhealth=
subentityhealth=
addentityhealth=
lightintensity=
Variable system - An advanced variable system for anyone who makes custom scripts. The new variable commands are:
actions:
makeglobalvar=VarName VarType
- VarName can be whatever you want for a variable name.
- VarType can be either "int" "float" or "string" (without the quotes)
-- int variables will hold a numeric value, but will not contain decimal places
-- float variables will hold a numeric value, and can contain decimal places
-- string variables can contain any sequence of characters/words
setglobalvar=VarName Value
- VarName must be the name of a variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int the variable will be set to the value specified, if the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the exact value specified, including decimals
--- if the variable is a string, the variable will be set to the exact value specified, but mathematical operations and comparisons cannot be performed on strings.
-- a string
--- the string must be contained in quotes (e.g. setglobalvar=strvar "whatever i want to type") and cannot contain commas in the string (if requested, I can create an escape character).
--- if the variable is an int or float, and the value specified is a string, the variable will be set to 0.
--- if the variable is a string, it will be set to the string between the quotation marks.
-- an existing variable name
--- if the variable is an int the variable will be set to the value of the variable specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the exact value of the variable specified, including decimals
--- if the variable is a string, the variable will be set to the exact value of or string contained in the variable specified, but mathematical operations and comparisons cannot be performed on strings.
incglobalvar=VarName Value
- VarName must be the name of a variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int the variable will be set to the sum of the variable's current value and the value specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the sum of the variable's current value and the exact value specified, including decimals
-- a string
--- if the variable is an int or float, the value of the variable will not change.
--- if the variable is a string, the variable will be the concatenation of it's current value, with the string specified.
-- an existing variable name
--- if the variable is an int the variable will be set to the sum of the variable's current value and the value of the variable specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the sum of the variable's current value and the exact value of the variable specified, including decimals
--- if the variable is a string, the variable will be the concatenation of it's current value, with the value of the variable specified.
decglobalvar=VarName Value
- VarName must be the name of an int or float variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, the varaible will be set to the difference of the variable's current value and the value specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the difference of the variable's current value and the exact value specified, including decimals
-- an existing variable name
--- if the variable is an int the variable will be set to the difference of the variable's current value and the value of the variable specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the difference of the variable's current value and the exact value of the variable specified, including decimals
multglobalvar=VarName Value
- VarName must be the name of an int or float variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, the varaible will be set to the product of the variable's current value and the value specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the product of the variable's current value and the exact value specified, including decimals
-- an existing variable name
--- if the variable is an int the variable will be set to the product of the variable's current value and the value of the variable specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the product of the variable's current value and the exact value of the variable specified, including decimals
divglobalvar=VarName Value
- VarName must be the name of an int or float variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, the varaible will be set to the quotient of the variable's current value and the value specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the quotient of the variable's current value and the exact value specified, including decimals
-- an existing variable name
--- if the variable is an int the variable will be set to the quotient of the variable's current value and the value of the variable specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the quotient of the variable's current value and the exact value of the variable specified, including decimals
modglobalvar=VarName Value
- VarName must be the name of an int or float variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, the varaible will be set to the remainder of the variable's current value and the value specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the remainder of the variable's current value and the exact value specified, including decimals
-- an existing variable name
--- if the variable is an int the variable will be set to the remainder of the variable's current value and the value of the variable specified. If the value contains decimals, they will not be stored
--- if the variable is a float, the variable will be set to the remainder of the variable's current value and the exact value of the variable specified, including decimals
conditions:
globalvarequal=VarName Value
- VarName must be the name of a variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, it will check to see if the current value of the variable is equal to the value specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is equal to the value specified, including decimals.
-- a string
--- must be contained in quotes
--- if the variable is an int or a float, this will always be false
--- if the variable is a string, it will check to see if the current value of the variable is equal to the string contained in quotes. Cases must be equal too.
-- an existing variable name
--- if the variable is an int, it will check to see if the current value of the variable is equal to the value of the variable specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is equal to the value or the variable specified, including decimals.
--- if the variable is a string, it will check to see if the current value of the variable is equal to the value of the variable specified. Cases must be equal too.
globalvarnotequal=VarName Value
- VarName must be the name of a variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, it will check to see if the current value of the variable is not equal to the value specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is not equal to the value specified, including decimals.
-- a string
--- must be contained in quotes
--- if the variable is an int or a float, this will always be true
--- if the variable is a string, it will check to see if the current value of the variable is not equal to the string contained in quotes. Cases must be equal too.
-- an existing variable name
--- if the variable is an int, it will check to see if the current value of the variable is not equal to the value of the variable specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is not equal to the value or the variable specified, including decimals.
--- if the variable is a string, it will check to see if the current value of the variable is not equal to the value of the variable specified. Cases must be equal too.
globalvarless=VarName Value
- VarName must be the name of an int or float variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, it will check to see if the current value of the variable is less than the value specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is less than the value specified, including decimals.
-- an existing variable name
--- if the variable is an int, it will check to see if the current value of the variable is less than the value of the variable specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is less than the value or the variable specified, including decimals.
globalvargreater=VarName Value
- VarName must be the name of an int or float variable previously created with the "makeglobalvar" command
- Value can be either:
-- a numeric value
--- if the variable is an int, it will check to see if the current value of the variable is greater than the value specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is greater than the value specified, including decimals.
-- an existing variable name
--- if the variable is an int, it will check to see if the current value of the variable is greater than the value of the variable specified. If the value contains decimals, they will not be stored.
--- if the variable is a float, it will check to see if the current value of the variable is greater than the value or the variable specified, including decimals.
In addition to all of the variable FPI keywords, you can now use variable names in place of numeric values for EVERY FPI command.
Download:
Edit: New beta is out.
Enjoy and let me know what you think.
Well, that was a pain to type.