Argentine
New Member
- Reaction score
- 2
If anyone knows how I can fix* this trigger (or a has a link to a better movement system) can you reply to this post with such information?
*the problem i want to fix with this trigger is that when i want to turn the character the time delay is greater than it should be between pressing the arrow key and the character turning. I really need to improve the ability to turn with the arrow keys for my game engine to function properly.
The unit is also slightly twitching when he moves. If there is some way to make the full wal/run animation to run properly instead of this constantly triggering to make the animation start over again and again please let me know.
a third problem i have with this trigger is if i am holding up arrow and then also push left or right, instead of moving diagonal, the game think i am releasing up. (in other words he stops moving forward to turn)
Here is the trigger:
forward movement
Diagonal movement
my button pressed triggers are also all like this one for up left and right:
*the problem i want to fix with this trigger is that when i want to turn the character the time delay is greater than it should be between pressing the arrow key and the character turning. I really need to improve the ability to turn with the arrow keys for my game engine to function properly.
The unit is also slightly twitching when he moves. If there is some way to make the full wal/run animation to run properly instead of this constantly triggering to make the animation start over again and again please let me know.
a third problem i have with this trigger is if i am holding up arrow and then also push left or right, instead of moving diagonal, the game think i am releasing up. (in other words he stops moving forward to turn)
Here is the trigger:
forward movement
Trigger:
- movement
- Events
- Time - Every 0.20 seconds of game time
- Conditions
- Actions
- Player Group - Pick every player in (All players) and do (Actions)
- Loop - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Up[(Player number of (Picked player))] Equal to True
- Left[(Player number of (Picked player))] Equal to False
- Right[(Player number of (Picked player))] Equal to False
- Then - Actions
- Animation - Change player_hero[(Player number of (Triggering player))]'s animation speed to 50.00% of its original speed
- Animation - Play player_hero[(Player number of (Picked player))]'s walk animation
- Set TempPoint[(Player number of (Picked player))] = (Position of player_hero[(Player number of (Picked player))])
- Unit - Order player_hero[(Player number of (Picked player))] to Move To (TempPoint[(Player number of (Picked player))] offset by 90.00 towards (Facing of player_hero[(Player number of (Picked player))]) degrees)
- Custom script: call RemoveLocation (udg_TempPoint[GetConvertedPlayerId(GetEnumPlayer())])
- Else - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Right[(Player number of (Picked player))] Equal to True
- Then - Actions
- Animation - Play player_hero[(Player number of (Triggering player))]'s walk animation
- Set TempPoint[(Player number of (Picked player))] = (Position of player_hero[(Player number of (Picked player))])
- Unit - Order player_hero[(Player number of (Picked player))] to Move To (TempPoint[(Player number of (Picked player))] offset by 90.00 towards ((Facing of player_hero[(Player number of (Picked player))]) + -90.00) degrees)
- Custom script: call RemoveLocation (udg_TempPoint[GetConvertedPlayerId(GetEnumPlayer())])
- Else - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Left[(Player number of (Picked player))] Equal to True
- Then - Actions
- Animation - Play player_hero[(Player number of (Triggering player))]'s walk animation
- Set TempPoint[(Player number of (Picked player))] = (Position of player_hero[(Player number of (Picked player))])
- Unit - Order player_hero[(Player number of (Picked player))] to Move To (TempPoint[(Player number of (Picked player))] offset by 90.00 towards ((Facing of player_hero[(Player number of (Picked player))]) + 90.00) degrees)
- Custom script: call RemoveLocation (udg_TempPoint[GetConvertedPlayerId(GetEnumPlayer())])
- Else - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- down[(Player number of (Picked player))] Equal to True
- Then - Actions
- Animation - Play player_hero[(Player number of (Triggering player))]'s walk animation
- Set TempPoint[(Player number of (Picked player))] = (Position of player_hero[(Player number of (Picked player))])
- Unit - Order player_hero[(Player number of (Picked player))] to Move To (TempPoint[(Player number of (Picked player))] offset by -75.00 towards ((Facing of player_hero[(Player number of (Picked player))]) + 0.00) degrees)
- Custom script: call RemoveLocation (udg_TempPoint[GetConvertedPlayerId(GetEnumPlayer())])
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Loop - Actions
- Player Group - Pick every player in (All players) and do (Actions)
- Events
Diagonal movement
Trigger:
- diagnal move
- Events
- Time - Every 0.10 seconds of game time
- Conditions
- Actions
- Player Group - Pick every player in (All players) and do (Actions)
- Loop - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Up[(Player number of (Picked player))] Equal to True
- Left[(Player number of (Picked player))] Equal to True
- Then - Actions
- Unit - Make player_hero[(Player number of (Picked player))] face ((Facing of player_hero[(Player number of (Picked player))]) + 65.00) over 0.10 seconds
- Set TempPoint[(Player number of (Picked player))] = ((Position of player_hero[(Player number of (Picked player))]) offset by 10.00 towards (Facing of player_hero[(Player number of (Picked player))]) degrees)
- Unit - Move player_hero[(Player number of (Picked player))] instantly to TempPoint[(Player number of (Picked player))]
- Animation - Play player_hero[(Player number of (Picked player))]'s walk animation
- Else - Actions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- Up[(Player number of (Picked player))] Equal to True
- Right[(Player number of (Picked player))] Equal to True
- Then - Actions
- Unit - Make player_hero[(Player number of (Picked player))] face ((Facing of player_hero[(Player number of (Picked player))]) + -65.00) over 0.10 seconds
- Set TempPoint[(Player number of (Picked player))] = ((Position of player_hero[(Player number of (Picked player))]) offset by -10.00 towards (Facing of player_hero[(Player number of (Picked player))]) degrees)
- Unit - Move player_hero[(Player number of (Picked player))] instantly to TempPoint[(Player number of (Picked player))]
- Animation - Play player_hero[(Player number of (Picked player))]'s walk animation
- Else - Actions
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- If - Conditions
- If (All Conditions are True) then do (Then Actions) else do (Else Actions)
- Loop - Actions
- Player Group - Pick every player in (All players) and do (Actions)
- Events
my button pressed triggers are also all like this one for up left and right:
Trigger:
- up released
- Events
- Player - Player 1 (Red) Releases the Up Arrow key
- Conditions
- Actions
- Set Up[(Player number of (Triggering player))] = False
- Unit - Order player_hero[(Player number of (Triggering player))] to Stop
- Events