Skip to content
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

Monster remove ladder #72

Closed
peonso opened this issue Sep 2, 2016 · 14 comments
Closed

Monster remove ladder #72

peonso opened this issue Sep 2, 2016 · 14 comments

Comments

@peonso
Copy link
Collaborator

peonso commented Sep 2, 2016

I do not know if it's a bug but from what I tested here, a monster removed a ladder on their way
itemid 1386 a ladder

before

after

@diegorodriguesvieira

@peonso peonso added the bug label Sep 2, 2016
@diegorodriguesvieira
Copy link
Contributor

image

@diegorodriguesvieira
Copy link
Contributor

diegorodriguesvieira commented Sep 2, 2016

@peonso This error only happens in OTClient...

@peonso peonso added invalid and removed bug labels Sep 2, 2016
@peonso peonso closed this as completed Sep 2, 2016
@diegorodriguesvieira
Copy link
Contributor

Can anyone help me find this bug in OTClient? :/

@peonso
Copy link
Collaborator Author

peonso commented Sep 2, 2016

@diegorodriguesvieira
Copy link
Contributor

Thanks man, I'll try to fix it...

@diegorodriguesvieira
Copy link
Contributor

diegorodriguesvieira commented Sep 2, 2016

I found a fix, I don't know if it's the best...

Open tile.cpp and find:
g_game.FreeThing(oldSplash);

And add below:
onUpdateTile();

Find in method void Tile::__updateThing:
onUpdateTileItem(item, oldType, item, newType);

And add below:
onUpdateTile();

image

I found at: edubart/otclient#418 (comment)

diegorodriguesvieira referenced this issue Sep 2, 2016
second part of
5abc8c5

ranged monsters will change target correctly now  (always picking the
closest one), also all monsters have correct chance to change target and
strategies as they work in real tibia, they can pick the nearest target,
the one with the lowest % health, the one that did the most damage and
also a random one.

updated othire_win32.exe to latest changes
This was referenced Sep 5, 2016
peonso added a commit to peonso/tibialegacyserver that referenced this issue Sep 7, 2016
related to #28

while using otclient, ladder item used to disappear when a splash item
was created above it

Ezzz-dev/OTHire#72 (comment)
@Anastaciaa
Copy link

This is not properly fix. It causes some screen jumps while getting hits.

@peonso
Copy link
Collaborator Author

peonso commented Sep 7, 2016

@Anastaciaa in both OTClient and default one?

@Anastaciaa
Copy link

Yes

@diegorodriguesvieira
Copy link
Contributor

@Anastaciaa How can I fix it?

@Anastaciaa
Copy link

@diegorodriguesvieira send me your skype ill contact you. I have to look on this through team viewer because it's abit complicated.

@diegorodriguesvieira
Copy link
Contributor

Thank you @Anastaciaa for the help! My skype: diego.ldn

@peonso peonso added bug and removed invalid labels Sep 10, 2016
@peonso peonso added this to the Version 0.0.3 milestone Sep 10, 2016
@wadbott
Copy link

wadbott commented Nov 26, 2019

TFS 1.3 SOLUTION FOR TIBIA 7.4 - 7.72

Open vc14/theforgottenserver.vcxproj

Open tile.cpp, hit CTRL + F and look for "//remove old splash if exists"

Above this phrase add
SpectatorHashSet spectators;
g_game.map.getSpectators(spectators, getPosition(), true, true);

Below postRemoveNotification(oldSplash, nullptr, 0); add
onUpdateTile(spectators);

@pasturryx
Copy link

@don-romano i tested your code , but the problem is that after the monter dies if i want to use the ladder, it doesn't allow/let me use it... there is a missing code , any ideas?
`

				SpectatorVec spectators; //7.4 sourceedit fix splash //7.4 sourceedit
				g_game.map.getSpectators(spectators, getPosition(), true, true);//7.4 sourceedit fix splash //7.4 sourceedit
				//remove old splash if exists
				for (ItemVector::const_iterator it = items->getBeginTopItem(), end = items->getEndTopItem(); it != end; ++it) {
					Item* oldSplash = *it;
					if (!Item::items[oldSplash->getID()].isSplash()) {
						continue;
					}

					removeThing(oldSplash, 1);
					oldSplash->setParent(nullptr);
					g_game.ReleaseItem(oldSplash);
					postRemoveNotification(oldSplash, nullptr, 0);
					onUpdateTile(spectators); //7.4 sourceedit fix splash //7.4 sourceedit
					break;`

@peonso

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants