Arcturus-Community/src/main/java/com/eu/habbo/messages/incoming/guilds/GuildSetAdminEvent.java
2018-09-28 19:25:00 +00:00

54 lines
2.0 KiB
Java

package com.eu.habbo.messages.incoming.guilds;
import com.eu.habbo.Emulator;
import com.eu.habbo.habbohotel.guilds.Guild;
import com.eu.habbo.habbohotel.guilds.GuildMember;
import com.eu.habbo.habbohotel.rooms.Room;
import com.eu.habbo.habbohotel.users.Habbo;
import com.eu.habbo.messages.incoming.MessageHandler;
import com.eu.habbo.messages.outgoing.guilds.GuildMemberUpdateComposer;
import com.eu.habbo.plugin.events.guilds.GuildGivenAdminEvent;
public class GuildSetAdminEvent extends MessageHandler
{
@Override
public void handle() throws Exception
{
int guildId = this.packet.readInt();
int userId = this.packet.readInt();
Guild guild = Emulator.getGameEnvironment().getGuildManager().getGuild(guildId);
if (guild != null)
{
if (guild.getOwnerId() == this.client.getHabbo().getHabboInfo().getId() || this.client.getHabbo().hasPermission("acc_guild_admin"))
{
Emulator.getGameEnvironment().getGuildManager().setAdmin(guild, userId);
Habbo habbo = Emulator.getGameEnvironment().getHabboManager().getHabbo(userId);
GuildGivenAdminEvent adminEvent = new GuildGivenAdminEvent(guild, userId, habbo, this.client.getHabbo());
Emulator.getPluginManager().fireEvent(adminEvent);
if (adminEvent.isCancelled())
return;
if (habbo != null)
{
Room room = habbo.getHabboInfo().getCurrentRoom();
if (room != null)
{
if (room.getGuildId() == guildId)
{
room.refreshRightsForHabbo(habbo);
}
}
}
GuildMember guildMember = Emulator.getGameEnvironment().getGuildManager().getGuildMember(guildId, userId);
this.client.sendResponse(new GuildMemberUpdateComposer(guild, guildMember));
}
}
}
}