当前位置: 首页>>代码示例>>Java>>正文


Java ChatType类代码示例

本文整理汇总了Java中org.spongepowered.api.text.chat.ChatType的典型用法代码示例。如果您正苦于以下问题:Java ChatType类的具体用法?Java ChatType怎么用?Java ChatType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


ChatType类属于org.spongepowered.api.text.chat包,在下文中一共展示了ChatType类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: transformMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformMessage(@Nullable Object sender, MessageReceiver recipient, Text original, ChatType type) {
    Optional<Text> optMessage = super.transformMessage(sender, recipient, original, type);
    if (!optMessage.isPresent()) {
        return optMessage;
    }
    // This could be useful as a method on ChatType.
    boolean isChatArea = type == ChatTypes.CHAT || type == ChatTypes.SYSTEM;
    if (recipient instanceof Player && isChatArea) {
        PlayerChatView view = ChatUILib.getView((Player) recipient);
        CommandSource source = this.causeSource;
        if (sender instanceof CommandSource) {
            source = (CommandSource) sender;
        }
        if (view != null) {
            return view.transformOutgoing(source, optMessage.get(), type);
        }
    }
    return optMessage;
}
 
开发者ID:simon816,项目名称:ChatUI,代码行数:21,代码来源:WrapOutputChannel.java

示例2: transformMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformMessage(@Nullable Object sender, MessageReceiver recipient, Text original, ChatType type) {
    boolean spy = recipient instanceof Player && spies.contains(((Player) recipient).getUniqueId());

    Clan clan = clanPlayer.getClan();
    Rank rank = clanPlayer.getRank();
    Text rankText = null;
    if (spy && clan != null) {
        rankText = Text.join(
                clan.getTagColored(),
                Text.of(" ")
        );
    } else if (rank != null) {
        rankText = Text.join(
                Text.builder("[").color(TextColors.GRAY).build(),
                Text.builder(rank.getName()).color(TextColors.BLUE).build(),
                Text.builder("] ").color(TextColors.GRAY).build()
        );
    }

    Text newMessage = Text.join(
            Text.builder("[").color(TextColors.GRAY).build(),
            Text.builder("Клановый").color(TextColors.YELLOW).build(),
            Text.builder("] ").color(TextColors.GRAY).build(),
            (rankText == null) ? Text.of("") : rankText,
            Text.of(clanPlayer.getName() + ": "),
            original.toBuilder().color(TextColors.YELLOW).build()
    );

    if (spy) {
        newMessage = newMessage.toBuilder().style(TextStyles.ITALIC).build();
    }

    return Optional.of(newMessage);
}
 
开发者ID:iLefty,项目名称:mcClans,代码行数:36,代码来源:ClanMessageChannelImpl.java

示例3: transformMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformMessage(@Nullable Object sender, MessageReceiver recipient, Text original, ChatType type) {
    boolean spy = recipient instanceof Player && spies.contains(((Player) recipient).getUniqueId());

    Clan clan = clanPlayer.getClan();
    Text clanTagText = null;
    if (clan != null) {
        clanTagText = Text.join(
                clan.getTagColored(),
                Text.of(" ")
        );
    }

    Text newMessage = Text.join(
            Text.builder("[").color(TextColors.GRAY).build(),
            Text.builder("Альянс").color(TextColors.GOLD).build(),
            Text.builder("] ").color(TextColors.GRAY).build(),
            (clanTagText == null) ? Text.of("") : clanTagText,
            Text.of(clanPlayer.getName() + ": "),
            original.toBuilder().color(TextColors.GOLD).build()
    );

    if (spy) {
        newMessage = newMessage.toBuilder().style(TextStyles.ITALIC).build();
    }

    return Optional.of(newMessage);
}
 
开发者ID:iLefty,项目名称:mcClans,代码行数:29,代码来源:AllyMessageChannelImpl.java

示例4: transformOutgoing

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformOutgoing(CommandSource sender, Text originalOutgoing, ChatType type) {
    if (this.isUpdating) {
        // Send it straight out
        return Optional.of(originalOutgoing);
    }
    this.globalTab.appendMessage(originalOutgoing);
    return Optional.of(this.window.draw(this.playerContext));
}
 
开发者ID:simon816,项目名称:ChatUI,代码行数:10,代码来源:ActivePlayerChatView.java

示例5: flushBuffer

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
private void flushBuffer() {
    Player player = getPlayer();
    for (Tuple<Text, ChatType> message : this.chatBuffer) {
        player.sendMessage(message.getSecond(), message.getFirst());
    }
    this.chatBuffer.clear();
}
 
开发者ID:simon816,项目名称:ChatUI,代码行数:8,代码来源:DefaultChatView.java

示例6: transformOutgoing

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformOutgoing(CommandSource sender, Text originalOutgoing, ChatType type) {
    if (this.window == null || this.isUpdating) {
        return Optional.of(originalOutgoing);
    }
    this.chatBuffer.add(new Tuple<>(originalOutgoing, type));
    return Optional.empty();
}
 
开发者ID:simon816,项目名称:ChatUI,代码行数:9,代码来源:DefaultChatView.java

示例7: send

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public void send(@Nullable Object sender, Text original, ChatType type) {
    checkNotNull(original, "original text");
    checkNotNull(type, "type");
    for (MessageReceiver member : this.getMembers()) {
        if (member instanceof ChatTypeMessageReceiver) {
            this.transformMessage(sender, member, original, type).ifPresent(text -> ((ChatTypeMessageReceiver) member).sendMessage(type, text));
        } else {
            this.transformMessage(sender, member, original, type).ifPresent(member::sendMessage);
        }
        if (member instanceof Player) {
            Player player = (Player) member;
            boolean p = sender instanceof Player;
            Player s = p ? (Player) sender : null;
            if ((getConfig().sound.play || getConfig().title.use) &&
                    ((!p || (s.hasPermission("boop.use." + player.getName()) || !getConfig().restricted.contains(player.getName())))
                            && (textContainsAny(original, getPlayerMatches(player))
                        || textContainsAny(original, applyPrefixes(getGroupNames(player).stream()
                            .filter(t -> !p || (s.hasPermission("boop.use." + t) || !getConfig().restricted.contains(t)))
                            .collect(Collectors.toList())))))) {
                if (getConfig().sound.play) {
                    player.playSound(getConfig().sound.sound, player.getLocation().getPosition(), 10.0);
                }
                if (getConfig().title.use) {
                    player.sendTitle(Title.builder().subtitle(getConfig().title.text).fadeIn(20).fadeOut(20).stay(40).build());
                }
            }
        }
    }
}
 
开发者ID:pie-flavor,项目名称:Boop,代码行数:31,代码来源:BoopableChannel.java

示例8: transformMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformMessage(@Nullable Object sender, MessageReceiver recipient, Text original, ChatType type) {
    if (!(recipient instanceof Player)) return Optional.of(original);
    Player p = (Player) recipient;
    List<String> groups = applyPrefixes(getGroupNames(p));
    boolean matchesAny = textContainsAny(original, getPlayerMatches(p)) || textContainsAny(original, groups);
    if (!matchesAny && !getConfig().name.colorAll) return Optional.of(original);
    if (getConfig().name.recolor) {
        for (String match : getPlayerMatches(p)) {
            original = addColor(original, match, getConfig().name.color);
        }
        for (String s : groups) {
            original = addColor(original, s, getConfig().name.color);
        }
    }
    if (getConfig().name.colorAll) {
        for (Player pl : Sponge.getServer().getOnlinePlayers()) {
            for (String pmatch : getPlayerMatches(pl)) {
                if (!pl.equals(p) && textContains(original, pmatch)) {
                    original = addColor(original, pmatch, getConfig().name.altColor);
                }
            }
        }
        for (String group : getConfig().groups) {
            String gmatch = getConfig().prefix + group;
            if (!isInGroup(p, group) && textContains(original, gmatch)) {
                original = addColor(original, gmatch, getConfig().name.altColor);
            }
        }
    }
    if (matchesAny && getConfig().message.recolor) original = original.toBuilder().color(getConfig().message.color).build();
    return Optional.of(original);
}
 
开发者ID:pie-flavor,项目名称:Boop,代码行数:34,代码来源:BoopableChannel.java

示例9: sendMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public void sendMessage(ChatType type, Text message) {
    checkNotNull(type, "chatType");
    checkNotNull(message, "message");
    if (!this.players.isEmpty()) {
        final Map<Locale, Message> networkMessages = new HashMap<>();
        for (LanternPlayer player : this.players) {
            player.getConnection().send(networkMessages.computeIfAbsent(player.getLocale(),
                    locale -> ((LanternChatType) type).getMessageProvider().apply(message, locale)));
        }
    }
}
 
开发者ID:LanternPowered,项目名称:LanternServer,代码行数:13,代码来源:LanternWorld.java

示例10: sendMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public void sendMessage(ChatType type, Text message) {
    checkNotNull(message, "message");
    checkNotNull(type, "type");
    if (this.chatVisibility.isVisible(type)) {
        this.session.send(((LanternChatType) type).getMessageProvider().apply(message, this.locale));
    }
}
 
开发者ID:LanternPowered,项目名称:LanternServer,代码行数:9,代码来源:LanternPlayer.java

示例11: transformMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformMessage(@Nullable Object sender, MessageReceiver recipient, Text original, ChatType type) {
    System.out.println("sender: " + sender);
    System.out.println("message: " + original.toPlain());

    if(members.contains(recipient)) {
        try {
            original = formatMessage(sender, original);
        } catch (TextMessageException e) {
            e.printStackTrace();
        }
    }

    return Optional.of(original);
}
 
开发者ID:prism,项目名称:Darmok,代码行数:16,代码来源:Channel.java

示例12: transformOutgoing

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformOutgoing(CommandSource sender, Text originalOutgoing, ChatType type) {
    return Optional.of(originalOutgoing);
}
 
开发者ID:simon816,项目名称:ChatUI,代码行数:5,代码来源:DisabledChatView.java

示例13: transformOutgoing

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public Optional<Text> transformOutgoing(CommandSource sender, Text originalOutgoing, ChatType type) {
    return this.actualView.transformOutgoing(sender, originalOutgoing, type);
}
 
开发者ID:simon816,项目名称:ChatUI,代码行数:5,代码来源:ChatUIView.java

示例14: sendMessage

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public void sendMessage(ChatType type, Text message) {
	this.player.sendMessage(type, message);
}
 
开发者ID:EverCraft,项目名称:EverAPI,代码行数:5,代码来源:PlayerSponge.java

示例15: sendMessages

import org.spongepowered.api.text.chat.ChatType; //导入依赖的package包/类
@Override
public void sendMessages(ChatType type, Text... messages) {
	this.player.sendMessages(type, messages);
}
 
开发者ID:EverCraft,项目名称:EverAPI,代码行数:5,代码来源:PlayerSponge.java


注:本文中的org.spongepowered.api.text.chat.ChatType类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。