添加公会经验

zhangshanxue 2020-07-17 21:28:26 +08:00
parent a8a46da07b
commit c8a9c873c9
1 changed files with 44 additions and 0 deletions

View File

@ -0,0 +1,44 @@
package com.ljsd.jieling.kefu;
import com.ljsd.GameApplication;
import com.ljsd.jieling.db.redis.RedisKey;
import com.ljsd.jieling.db.redis.RedisUtil;
import com.ljsd.jieling.exception.ErrorCode;
import com.ljsd.jieling.exception.ErrorCodeException;
import com.ljsd.jieling.logic.dao.GuilidManager;
import com.ljsd.jieling.logic.dao.root.GuildCache;
import com.ljsd.jieling.logic.dao.root.GuildInfo;
import config.SGuildLevelConfig;
import manager.STableManager;
import java.util.Map;
//addfete "uid" 281 500
public class Cmd_addfete extends GmRoleAbstract {
@Override
public boolean exec(String[] args) throws Exception {
if(args.length!=2){
return true;
}
int guildId = Integer.valueOf(args[0]);
int addexp = Integer.valueOf(args[1]);
GuildInfo guildInfo = GuilidManager.guildInfoMap.get(guildId);
if (guildInfo == null) {
throw new ErrorCodeException(ErrorCode.FAMILY_NULL);
}
//自动推送给所有成员
guildInfo.addFete(addexp);
Map<Integer, SGuildLevelConfig> levelConfigMap = STableManager.getConfig(SGuildLevelConfig.class);
if (guildInfo.getExp() + addexp >= levelConfigMap.get(guildInfo.getLevel()).getExp()) {
guildInfo.updateLevel(guildInfo.getLevel() + 1);
guildInfo.updateExp(guildInfo.getExp() + addexp - levelConfigMap.get(guildInfo.getLevel()).getExp());
RedisUtil.getInstence().putMapEntry(RedisKey.FAMILY_INFO, "", String.valueOf(guildInfo.getId()), new GuildCache(GameApplication.serverId, guildInfo.getIcon(), guildInfo.getLevel(), guildInfo.getName()));
} else {
guildInfo.updateExp(guildInfo.getExp() + addexp);
}
return true;
}
}