I like it!!! I wish he could still suck up people...could you still make him do that? Or change his AAA combo to it if you can because Vulcan Jap is a Neutral B move. Sorry I know absouletely NOTHING about PSA.
Kirby can't inhale a new ability if he's already using one. Also, I can't edit the action code for his AAA jab combo, so I couldn't even if I wanted to.
ok, I'll try my best to understand it when you do
Okay, I'll try to make it simple. Let's start with variables.
Variables are a way of holding information, so you can use them later. There are many different types of variables, each designed to store different things. An integer variable (basic in PSA) only holds whole numbers, like 1, 243, or -6. A float variable is for storing numbers with decimal places, like 2.5, 15839.243, or -0.23. A boolean variable, or bit variable, only has two options: yes or no, true or false, set or not set. There are other types, but PSA doesn't really use them.
Examples of variables in use:
x = 5
x = x - 2
y = x + 5
At this point, x would be equal to 3, and y would be equal to 8.
In addition to what they can hold, which is called the variable's class, there is another property that affects how a variable works called its scope. The scope is how long the variable lasts. In the case of PSA, there are only 3 different scopes, and only two should be used. They are the internal constant (IC), the runtime longterm (LA), and random access (RA). You shouldn't mess with the IC variables, they do important things, and messing those up results in freezing a lot. The difference between the other two is that LA variables keep their value until you change them manually, whereas RA variables reset themselves once they're done being used. Use RA variables when the variable is only used for that move, and if the variable is changed in one move and used in another, use a LA variable. You should also watch out, because some of the variables are already used by the characters, and changing them can mess things up.
Now onto if statements:
An if statement is pretty straight forward. If this, then do that. Sometimes, it'll be like this: If this, then do that, else this instead. The "If" line checks a condition. If it is true, it does the code following it. If it's not, it does the code right after the "Else" statement, if that is there. If there isn't an "Else" statement, it'll jump to the next line after the "End If". If there is an else statement, but the condition is true, it will only do the lines between the "If" and the "Else", then continue after the "End If". Here are some examples.
Example 1:
IF: Ice Cream = Vanilla
Put Chocolate Syrup on Ice Cream
END IF
Eat Ice Cream
In this example, the chocolate syrup will only be used if the ice cream is vanilla. No matter flavor it is, you're going to eat it anyway.
Example 2:
Flip Coin
IF Coin = Heads
You win
ELSE
I win
END IF
In this example, a coin is tossed. If it is heads, you win, otherwise, I win.
Now switch blocks:
Switch blocks are like if statements, but have more answers than just yes or no. The first line is calling the Switch, which is always a variable. After that, for each possible value you want something to happen for, a Case statement is assigned to that value. If you want something to happen if none of your Case statements are met, you assign a Default Case statement. Here's an example:
Roll Die
SWITCH TheSideTheDieLandedOn
CASE 1
Go backward one space
CASE 2
Go forward two spaces
CASE 3
Go forward three spaces
CASE 4
Go backward two spaces
CASE 5
Lose a turn
CASE 6
Go back to home
DEFAULT CASE
Find a 6 sided die, and roll again
END SWITCH
Finally, loops:
There are a few types of loops, and normally the main ones I'd be discussing are While and For loops, but PSA doesn't work quite like that. What I call a For loop it just calls a Loop, and there are no while loops. It also relies heavily on Goto statements, which are normally avoided because they tend to complicate things. Anyway, the Loop function does just what it says: it loops a set of commands. It is normally done to do things more than once, but can also be used to do something until it's finished, which might only take one time to do it, or it might not even need to do the loop a single time. Loops in PSA are called with how many times you want them to run through, and after repeating the code following it that many times, continues on with the code after the Execute Loop command. Sometimes, the loop is set to run an infinite amount of times by setting the number of times to FFFFFFFF. These loops are always broken by a change action, change sub-action, or a goto. If they aren't, then an infinite loop will happen, and either the character will be stuck in an action, or the game will freeze.
Because I mentioned it, I should explain what a Goto is as well. Goto statements change where the code is running from by resetting the current line it's performing to a line somewhere else in the code. If this post was a block of code, you were the computer performing each line, and this line told you to goto the beginning, you'd be caught in a loop reading this whole thing over and over again.