mirror of
https://github.com/ProjectSWGCore/NGECore2.git
synced 2026-08-01 02:16:15 -04:00
Added guild chat, guild information window added, added variables in future for sponsor system
This commit is contained in:
@@ -9,22 +9,42 @@ def createRadial(core, owner, target, radials):
|
||||
#radials.clear()
|
||||
|
||||
if owner.getGuildId() != 0:
|
||||
guild = core.guildService.getGuildById(owner.getGuildId)
|
||||
guild = core.guildService.getGuildById(owner.getGuildId())
|
||||
|
||||
if guild is None:
|
||||
return
|
||||
|
||||
if guild.getLeader() == owner.getObjectID():
|
||||
radials.add(RadialOptions(0, RadialOptions.serverGuildGuildManagement, 3, '@guild:menu_guild_management'))
|
||||
radials.add(RadialOptions(0, RadialOptions.serverGuildMemberManagement, 3, '@guild:menu_member_management'))
|
||||
radials.add(RadialOptions(0, RadialOptions.serverGuildGuildManagement, 3, '@guild:menu_guild_management'))
|
||||
radials.add(RadialOptions(0, RadialOptions.serverGuildMemberManagement, 3, '@guild:menu_member_management'))
|
||||
|
||||
#Guild Management
|
||||
radials.add(RadialOptions(0, RadialOptions.serverGuildInfo, 3, '@guild:menu_info'))
|
||||
|
||||
#Member Management
|
||||
|
||||
# Leader options
|
||||
#if guild.getLeader() == owner.getObjectID():
|
||||
#Guild Management
|
||||
#radials.add(RadialOptions(3, RadialOptions.serverGuildDisband, 3, '@guild:menu_disband'))
|
||||
#radials.add(RadialOptions(3, 69, 3, '@guild:menu_leader_change'))
|
||||
|
||||
# Sponsor options
|
||||
#if guild.getSponsors().contains(owner.getObjectID()):
|
||||
|
||||
#Guild Management
|
||||
radials.add(RadialOptions(3, RadialOptions.serverGuildDisband, 3, '@guild:menu_disband'))
|
||||
|
||||
#Member Management
|
||||
radials.add(RadialOptions(4, RadialOptions.serverGuildSponsor, 3, '@guild:menu_sponsor'))
|
||||
return
|
||||
return
|
||||
|
||||
def handleSelection(core, owner, target, option):
|
||||
if option == RadialOptions.serverGuildInfo:
|
||||
guild = core.guildService.getGuildById(owner.getGuildId())
|
||||
|
||||
guildInfoPrompt = "Guild Name: " + guild.getName() + "\n" + \
|
||||
"(neutral)\n" + \
|
||||
"Guild Abbreviation: " + guild.getAbbreviation() + "\n" + \
|
||||
"Guild Leader: " + guild.getLeaderName() + "\n" + \
|
||||
"GCW Region Defender: None\n" + \
|
||||
"GCW Region Defender Bonus: 0%\n" + \
|
||||
"Guild Members: " + str(guild.getMembers().size())
|
||||
wndGuildInfo = core.suiService.createMessageBox(core.suiService.MessageBoxType.MESSAGE_BOX_OK, '@guild:info_title', guildInfoPrompt, owner, target, 10)
|
||||
core.suiService.openSUIWindow(wndGuildInfo)
|
||||
return
|
||||
return
|
||||
@@ -40,8 +40,10 @@ def handleGuildCreateName(owner, window, eventType, returnList):
|
||||
return
|
||||
|
||||
def doGuildCreate(owner, window, eventType, returnList):
|
||||
core = NGECore().getInstance()
|
||||
if eventType == 0:
|
||||
guild = NGECore().getInstance().guildService.createGuild(str(returnList.get(0)), str(owner.getAttachment('guildName')), owner)
|
||||
owner.setGuildId(guild.getId())
|
||||
guild = core.guildService.createGuild(str(returnList.get(0)), str(owner.getAttachment('guildName')), owner)
|
||||
core.guildService.joinGuild(guild, owner)
|
||||
guild.getSponsers().add(owner.getObjectID())
|
||||
return
|
||||
return
|
||||
@@ -34,11 +34,14 @@ public class Guild extends Delta implements Serializable, Comparable<Guild> {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
private int id;
|
||||
private int chatRoomId;
|
||||
private String abbreviation;
|
||||
private String name;
|
||||
private long leader;
|
||||
private String leaderName;
|
||||
private List<Long> members = new ArrayList<Long>();
|
||||
private List<Long> sponsors = new ArrayList<Long>();
|
||||
private List<Long> sponsoredPlayers = new ArrayList<Long>();
|
||||
|
||||
public Guild(int id, String abbreviation, String name, SWGObject leader) {
|
||||
this.id = id;
|
||||
@@ -46,7 +49,8 @@ public class Guild extends Delta implements Serializable, Comparable<Guild> {
|
||||
this.name = name;
|
||||
this.leader = leader.getObjectID();
|
||||
this.leaderName = leader.getCustomName();
|
||||
this.members.add(leader.getObjectID());
|
||||
//this.members.add(leader.getObjectID());
|
||||
//this.sponsors.add(leader.getObjectID());
|
||||
}
|
||||
|
||||
public Guild() {
|
||||
@@ -65,6 +69,14 @@ public class Guild extends Delta implements Serializable, Comparable<Guild> {
|
||||
}
|
||||
}
|
||||
|
||||
public int getChatRoomId() {
|
||||
return chatRoomId;
|
||||
}
|
||||
|
||||
public void setChatRoomId(int chatRoomId) {
|
||||
this.chatRoomId = chatRoomId;
|
||||
}
|
||||
|
||||
public String getAbbreviation() {
|
||||
synchronized(objectMutex) {
|
||||
return abbreviation;
|
||||
@@ -121,6 +133,22 @@ public class Guild extends Delta implements Serializable, Comparable<Guild> {
|
||||
}
|
||||
}
|
||||
|
||||
public List<Long> getSponsors() {
|
||||
return sponsors;
|
||||
}
|
||||
|
||||
public void setSponsors(List<Long> sponsors) {
|
||||
this.sponsors = sponsors;
|
||||
}
|
||||
|
||||
public List<Long> getSponsoredPlayers() {
|
||||
return sponsoredPlayers;
|
||||
}
|
||||
|
||||
public void setSponsoredPlayers(List<Long> sponsoredPlayers) {
|
||||
this.sponsoredPlayers = sponsoredPlayers;
|
||||
}
|
||||
|
||||
public byte[] getBytes() {
|
||||
synchronized(objectMutex) {
|
||||
IoBuffer buffer = createBuffer((getString().length() + 2));
|
||||
|
||||
@@ -25,7 +25,10 @@ import java.util.Map;
|
||||
|
||||
import resources.guild.Guild;
|
||||
import resources.objects.SWGSet;
|
||||
import resources.objects.creature.CreatureObject;
|
||||
import resources.objects.guild.GuildObject;
|
||||
import resources.objects.player.PlayerObject;
|
||||
import services.chat.ChatRoom;
|
||||
import main.NGECore;
|
||||
import engine.resources.objects.SWGObject;
|
||||
import engine.resources.service.INetworkDispatch;
|
||||
@@ -59,11 +62,26 @@ public class GuildService implements INetworkDispatch {
|
||||
int listSize = object.getGuildList().size();
|
||||
Guild guild = new Guild((listSize == 0 ? 1 : listSize + 1), abbreviation, name, leader);
|
||||
|
||||
object.getGuildList().add(guild);
|
||||
core.chatService.createChatRoom("", "guild." + guild.getId(), leader.getCustomName(), false, true, false);
|
||||
ChatRoom guildChat = core.chatService.createChatRoom("", "guild." + guild.getId() + ".GuildChat", leader.getCustomName(), false, true, false);
|
||||
guild.setChatRoomId(guildChat.getRoomId());
|
||||
|
||||
object.getGuildList().add(guild);
|
||||
return guild;
|
||||
}
|
||||
|
||||
public void joinGuild(Guild guild, CreatureObject joinee) {
|
||||
PlayerObject ghost = joinee.getPlayerObject();
|
||||
if (ghost == null)
|
||||
return;
|
||||
|
||||
guild.getMembers().add(joinee.getObjectID());
|
||||
joinee.setGuildId(guild.getId());
|
||||
|
||||
core.chatService.joinChatRoom(joinee.getCustomName(), guild.getChatRoomId());
|
||||
// TODO: Send new member guild mail
|
||||
}
|
||||
|
||||
public GuildObject getGuildObject() {
|
||||
return object;
|
||||
}
|
||||
@@ -88,7 +106,7 @@ public class GuildService implements INetworkDispatch {
|
||||
Guild guild = getGuildById(id);
|
||||
|
||||
if (guild != null) {
|
||||
object.getGuildList().add(guild);
|
||||
object.getGuildList().remove(guild);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -99,7 +117,7 @@ public class GuildService implements INetworkDispatch {
|
||||
Guild guild = getGuildByAbbreviation(abbreviation);
|
||||
|
||||
if (guild != null) {
|
||||
object.getGuildList().add(guild);
|
||||
object.getGuildList().remove(guild);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user