[area] Le joueur peut switcher le spawn des mobs dans ses aires #73

Open
opened 2021-07-17 01:03:21 +02:00 by sys4 · 1 comment
Owner

Depuis le commit 29b2204f7c du mod mobs_redo, le switch de tous les mobs ou seulement des monstres est possible.
Ce pourrait être une bonne idée d'offrir au joueur la possibilité de faire ce switch sur ses aires qu'il souhaite à l'aide d'une commande comme il peut le faire déjà pour activer les aires openfarming.

Depuis le commit https://sys4.fr/gitea/mtcontrib/mobs_redo/commit/29b2204f7c26c3fdbe83d28860845b861802588f du mod mobs_redo, le switch de tous les mobs ou seulement des monstres est possible. Ce pourrait être une bonne idée d'offrir au joueur la possibilité de faire ce switch sur ses aires qu'il souhaite à l'aide d'une commande comme il peut le faire déjà pour activer les aires openfarming.
sys4 added the
Évolution
label 2021-07-18 21:18:48 +02:00
Member

En relisant le code de areas, je crois que j'avais introduit un bug dans openfarming, un "return false is not player". https://sys4.fr/gitea/nalc/areas/src/branch/master/api.lua#L118

Ce qui voudrait dire que pour le check de mobs, comme le joueur est "", il return false et mobs ne pourrait pas faire spawn dans une openfarming.

le spawn est en openfarming, donc les mobs monstres ne doivent pas pouvoir spawn.

EDIT: en fait ça ne change rien, car si y a une area c'est protégé et return false quand même.
Juste qu'il faut modifier le code car c'est mal implémenté et si c'est openfarming ça ignore faction, c'est ma faute.

Du coup pour spawn les mobs dans une area "openmobs" par exemple, il faudrait modifier l'api car, is_protected(pos, "") ne peut pas comprende que c'est mobs qui demande et nimporte qui pourrait interragir dans une openmobs.

il faudrait écrire une nouvelle fonction is_mob_protected(pos, "") avec les mêmes test que la fonction normale, mais juste controler si y a une area et si elle est en openmobs.

puis faire les command et modifier pour enregistrer une openmobs.

En relisant le code de areas, je crois que j'avais introduit un bug dans openfarming, un "return false is not player". https://sys4.fr/gitea/nalc/areas/src/branch/master/api.lua#L118 Ce qui voudrait dire que pour le check de mobs, comme le joueur est "", il return false et mobs ne pourrait pas faire spawn dans une openfarming. le spawn est en openfarming, donc les mobs monstres ne doivent pas pouvoir spawn. EDIT: en fait ça ne change rien, car si y a une area c'est protégé et return false quand même. Juste qu'il faut modifier le code car c'est mal implémenté et si c'est openfarming ça ignore faction, c'est ma faute. Du coup pour spawn les mobs dans une area "openmobs" par exemple, il faudrait modifier l'api car, is_protected(pos, "") ne peut pas comprende que c'est mobs qui demande et nimporte qui pourrait interragir dans une openmobs. il faudrait écrire une nouvelle fonction is_mob_protected(pos, "") avec les mêmes test que la fonction normale, mais juste controler si y a une area et si elle est en openmobs. puis faire les command et modifier pour enregistrer une openmobs.
Sign in to join this conversation.
No Milestone
No Assignees
2 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: nalc/nalc-server-mods#73
No description provided.