Comments (7)
Please fill out the ticket items I have put in here. That makes it so I don't have to keep asking a million annoying questions about what version of unity your running, the version of mirror, etc. This just gets me really frustrated. Just please spend the time filling out the ticket properly next time...
With that said I guessed on your setup and tried to mimic the behavior. I'm also going to guess you're running mirror version 55.3.8
and unity 2019.4
because you didn't include any of this information. I'm also going to guess you're running windows
and not mac
or linux
for your builds. As this particular report makes it seem like it wouldn't be a build version issue. Gonna guess its not. Also going to guess you're running a supported version of invector 2.6.1b
.
You mentioned "melee" in your comment so I'm also going to guess you're talking about melee based characters and not shooter based characters (which means MP_vLockOn
component? eh, I'll probably check both). Could be wrong about that but, hey, you didn't fill out the ticket so I have to guess...
Here is what I did:
In MP_vLockOn
and MP_vLockOnShooter
, I added the following in the start method:
GetComponent<vThirdPersonController>().onDead.AddListener(OnDead);
Then added the new function:
protected virtual void OnDead(GameObject obj)
{
if (IsLockedOn())
{
LockOn(false);
}
}
All of the above takes care of the problem when you are targeting someone and you die. What about when you are targeting someone and that someone dies? The following addition will solve that by unlocking when you kill that target. Obviously modify to your needs.
In the protected override Transform target
's set
add the following (included some lines to help locate):
_target = value;
if (_target != null)
_target.GetComponent<vThirdPersonController>().onDead.AddListener(TargetDied);
if (NetworkClient.active && nc && nc.hasAuthority)
{
...
...
While digging around for the above fix I also noticed that the icon would display for none owned characters targets. To prevent this add the following to the two above meantioned scripts:
protected override void UpdateAimImage()
{
if (nc.hasAuthority)
base.UpdateAimImage();
}
The above doesn't solve all of the problems but was what I was able to find for today. Will keep looking at this tomorrow.
from easymultiplayer-invector.
All the above code has changed dramatically as of today anyway, just ignore it. I fixed your original above problem. I identified an edge case scenario during my final phase testing. I will fix that tomorrow as well. As long as I don't find anything else I can work on a release.
There was simply too many changes. I wrote new virtual
methods, and additional overrides
. This also included new ClientRpc
and Command
methods. It expands over 4 different files. I figured that's just too complicated to explain here. Just wait for the final fix.
from easymultiplayer-invector.
Okay this one was really difficult to fully track down. I really went down the rabbit hole on this one. Here are all the issues I solved. Some of these were with invectors code(I just coded around them) and some were bugs in my code:
- When already in strafe leaving strafe animation when targeting and never able to properly enter strafe animation's again unless you try and dry target
- Now it will automatically reconcile and properly fix the strafe animation states
- Targeting indicators visible to other clients
- Now it is only visible to the owner and no one else
- When late entering a match all target indicators were visible (fixed by above bullet point)
- When dying you still targeted (creating permanent targeting), now you will un-target the object that was killed or if you were killed.
While I did cleanup the code a lot from yesterdays monstrosity it is still too complicated to manually implement properly. Just wait for the next release to fix this (v0.3.6
?)
from easymultiplayer-invector.
Got it thanks I'll check and inform
from easymultiplayer-invector.
I am sorry I did not mention:
I am using EMI v 0.3.5
Unity 2020.3.27f1
I want to free Lockon from Melee Fighting only However I am using the following script
I am using Windows + Mac for the builds
This clearly does not help me understand can you be more specific about what is "TargetDied" and what do I need to get the Thrid person controller from?
from easymultiplayer-invector.
"TargetDied" is not recognized in this script
Assets\CBGames\EasyMultiplayer-Invector\Melee Combat\Scripts\Player\MP_vLockOn.cs(44,81): error CS0103: The name 'TargetDied' does not exist in the current context
from easymultiplayer-invector.
Alright perfect I love your dedication.
Thank you wes ❤️
from easymultiplayer-invector.
Related Issues (20)
- Create Example Scene For Chatbox HOT 1
- Damage indicator / Direction of bullet + Leaderboard HOT 3
- Top Down Shooter Add On Beta HOT 1
- Pause menu would be beautiful as a new feature
- When using chatbox with shooterMelee Template with Dedicated Server, Client is disconnected. HOT 6
- Add Colorblind Support HOT 1
- Clean Import Of TopDown Throws Errors HOT 1
- Error after switch from Host mode on to off, and rebuild HOT 1
- Upgrade To Invector 2.6.2 HOT 2
- Perform Test Results Window Too Slow HOT 1
- First Person Camera HOT 1
- Upgrade to Mirror 67.1.0 HOT 1
- Multiplayer support for vAnimatorEventReceiver and vGenericAnimation HOT 1
- Add Support For Invector 2.6.2a HOT 2
- AI Broken When Rebuild Navmesh HOT 1
- StandBuild run server error HOT 4
- Draw-Hide weapons not synced. HOT 1
- Hold Input Button Bug HOT 4
- Leaderboard shows numbers for dead players HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from easymultiplayer-invector.