-
Notifications
You must be signed in to change notification settings - Fork 57
Colossal titan fixes #383
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Colossal titan fixes #383
Conversation
fixed some syncing issues fixed weird behaviour when skip cutscenes is enabled disabled titans spawning on training difficulty removed some of the objects without collision near the civilians
- edits to the colossal titan healthbar - added titan and civilians health indicator on the top - fixed hand healthbar not filling correctly - removed weather cycle
AutumnThyme
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need some explanations on things and small changes but overall looks good.
| spawnPosition = Vector3(0, 8, 755); | ||
| startRotation = Vector3(0, 180, 0); | ||
| Game.SpawnEffect("ColossalSpawn", Vector3(0, 150, 765), Vector3(-90, 0, 0), 5.0); | ||
| wait 2.5; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Colossal still seems to attack before players have spawned in, I think it would be best for him to be inactive until the first player spawns.
| if (_steamState != ColossalSteamState.Off && IsMine()) | ||
| { | ||
| ApplySteamState(ColossalSteamState.Off); | ||
| photonView.RPC(nameof(SetSteamStateRPC), RpcTarget.Others, new object[] { (byte)ColossalSteamState.Off }); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should try to avoid this pattern and instead sync to all including owner so that all logic is centralized when state changes occur.
| MoveToEnemy(); | ||
| } | ||
| if (distance < _moveToRange || !_moveToActive || (_moveToExact && _moveToTimeout <= 0)) | ||
| else if (distance < _moveToRange || !_moveToActive || (_moveToExact && _moveToTimeout <= 0)) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this change do/fix? I need to be semi-concerned about any AI changes or acros will yell at me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reason titans weren't attacking targets is because the MoveToEnemy() right above was being overriden by the rest of that else-if chain, so the AIState never left 'MoveToPosition' making them not being able to attack anything. That else actually used to be there before but i believe it was removed by mistake on 902cc89
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you're seeing the behavior is now fixed, its all good. My bad on removing that, I think it had to do with something related to moving to targets while still allowing them to attack but I think this will just force a small delay for the state change when that happens now which is less problematic than the other issue.
| { | ||
| self._colossal.AttackSteam(); | ||
| #UI.SetLabelAll("TopCenter", "<b><size=28><color=#008000>Colossal Hand: </color>" + self._colossal.HandHealth + "</size></b>"); | ||
| if (self._colossal.LeftHandHealth <= 0 && self._colossal.RightHandHealth <= 0) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Honestly I partially wanted this logic C# side in the colossal's state timer since we will also be adding in the head lower/stun animation, but we can also just play it via cl here. I still haven't found a good way to expose this system to cl other than swapping between toggling it fully off and then overriding behavior. Feel free to leave for now but I want this goal noted down.
also fixed typo

No description provided.