forked from Mirrorlandia_minetest/minetest
Block & report player self-interaction (#11137)
This commit is contained in:
parent
77e936445f
commit
847860fc5c
@ -4654,6 +4654,7 @@ Call these functions only at load time!
|
||||
* `cheat`: `{type=<cheat_type>}`, where `<cheat_type>` is one of:
|
||||
* `moved_too_fast`
|
||||
* `interacted_too_far`
|
||||
* `interacted_with_self`
|
||||
* `interacted_while_dead`
|
||||
* `finished_unknown_dig`
|
||||
* `dug_unbreakable`
|
||||
|
@ -1041,6 +1041,12 @@ void Server::handleCommand_Interact(NetworkPacket *pkt)
|
||||
if (pointed.type == POINTEDTHING_NODE) {
|
||||
target_pos = intToFloat(pointed.node_undersurface, BS);
|
||||
} else if (pointed.type == POINTEDTHING_OBJECT) {
|
||||
if (playersao->getId() == pointed_object->getId()) {
|
||||
actionstream << "Server: " << player->getName()
|
||||
<< " attempted to interact with themselves" << std::endl;
|
||||
m_script->on_cheat(playersao, "interacted_with_self");
|
||||
return;
|
||||
}
|
||||
target_pos = pointed_object->getBasePosition();
|
||||
}
|
||||
float d = playersao->getEyePosition().getDistanceFrom(target_pos);
|
||||
|
Loading…
Reference in New Issue
Block a user