本文整理汇总了C#中PersonalCacheStruct.Add方法的典型用法代码示例。如果您正苦于以下问题:C# PersonalCacheStruct.Add方法的具体用法?C# PersonalCacheStruct.Add怎么用?C# PersonalCacheStruct.Add使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PersonalCacheStruct
的用法示例。
在下文中一共展示了PersonalCacheStruct.Add方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ProcessCmd
protected override void ProcessCmd(string[] args)
{
int magicID = args.Length > 0 ? args[0].Trim().ToInt() : 0;
short magicLv = args.Length > 1 ? args[1].Trim().ToShort() : (short)1;
var cacheSet = new PersonalCacheStruct<UserMagic>();
var userMagic = cacheSet.FindKey(UserID, magicID);
MagicInfo magic = new ShareCacheStruct<MagicInfo>().FindKey(magicID);
if (magic == null)
{
return;
}
if (userMagic == null)
{
userMagic = new UserMagic()
{
UserID = UserID,
MagicID = magicID,
MagicLv = magicLv,
IsEnabled = false,
MagicType = magic.MagicType,
};
cacheSet.Add(userMagic);
}
else
{
userMagic.MagicLv = magicLv;
}
}
示例2: SendAllowTask
/// <summary>
/// 下发任务
/// </summary>
/// <param name="user"></param>
/// <param name="taskID"></param>
public static List<UserTask> SendAllowTask(GameUser user, int taskID)
{
List<UserTask> userTaskList = new List<UserTask>();
var cacheSet = new PersonalCacheStruct<UserTask>();
UserTask preTask = cacheSet.FindKey(user.UserID, taskID);
if (taskID > 0 && preTask != null && (preTask.TaskState != TaskState.Close || preTask.TaskType == TaskType.Offset))
{
return userTaskList;
}
if (taskID == 0 && cacheSet.FindAll(user.UserID, m => m.TaskType < TaskType.Daily).Count > 0)
{
return userTaskList;
}
IList<StoryTaskInfo> taskList = StoryTaskInfo.GetNextTask(taskID);
bool isSend = true;
foreach (StoryTaskInfo taskInfo in taskList)
{
if (taskInfo.CountryID != CountryType.None && user.CountryID != taskInfo.CountryID)
{
continue;
}
UserTask userTask = cacheSet.FindKey(user.UserID, taskInfo.TaskID);
if (userTask == null)
{
userTask = new UserTask
{
TaskID = taskInfo.TaskID,
UserID = user.UserID,
TaskType = taskInfo.TaskType,
TaskState = taskInfo.TaskLv <= user.UserLv ? TaskState.AllowTake : TaskState.NoTake,
CompleteNum = 0,
CreateDate = DateTime.Now
};
cacheSet.Add(userTask);
userTask = cacheSet.FindKey(user.UserID, taskInfo.TaskID);
userTaskList.Add(userTask);
}
else
{
//判断是否已下发过
isSend = false;
break;
}
}
if (isSend)
{
return userTaskList;
}
return new List<UserTask>();
}
示例3: Process
private void Process(string userID, int fun)
{
FunctionEnum funEnum = fun.ToEnum<FunctionEnum>();
var cacheSet = new PersonalCacheStruct<UserFunction>();
UserFunction userFunction = cacheSet.FindKey(UserID, funEnum);
if (userFunction == null)
{
userFunction = new UserFunction()
{
UserID = userID,
FunEnum = funEnum,
CreateDate = DateTime.Now
};
cacheSet.Add(userFunction);
}
}
示例4: CheckDialNum
/// <summary>
/// 检查每日抽奖次数
/// </summary>
/// <param name="userID"></param>
public static void CheckDialNum(string userID)
{
UserDial userDial = new PersonalCacheStruct<UserDial>().FindKey(userID);
if (userDial != null && userDial.RefreshDate.Date != DateTime.Now.Date)
{
userDial.DialNum = 0;
userDial.RefreshDate = DateTime.Now;
}
if (userDial == null)
{
var cacheSet = new PersonalCacheStruct<UserDial>();
userDial = new UserDial();
userDial.UserID = userID;
userDial.HeadID = string.Empty;
userDial.ReturnRatio = 0;
userDial.DialNum = 0;
cacheSet.Add(userDial);
}
}
示例5: Process
private void Process(string userID, int generalID)
{
GeneralInfo generalInfo = new ShareCacheStruct<GeneralInfo>().FindKey(generalID);
if (generalInfo != null)
{
var cacheSet = new PersonalCacheStruct<UserGeneral>();
var usergeneral = cacheSet.FindKey(userID, generalID);
if (usergeneral == null)
{
usergeneral = new UserGeneral()
{
UserID = userID,
GeneralID = generalID,
GeneralName = generalInfo.GeneralName,
HeadID = generalInfo.HeadID,
PicturesID = generalInfo.PicturesID,
GeneralLv = generalInfo.GeneralLv,
LifeNum = generalInfo.LifeNum,
GeneralType = GeneralType.YongBing,
CareerID = generalInfo.CareerID,
PowerNum = generalInfo.PowerNum,
SoulNum = generalInfo.SoulNum,
IntellectNum = generalInfo.IntellectNum,
TrainingPower = 0,
TrainingSoul = 0,
TrainingIntellect = 0,
AbilityID = generalInfo.AbilityID,
Momentum = 25,
HitProbability = 85,
GeneralStatus = GeneralStatus.DuiWuZhong,
Experience1 = 0,
Experience2 = 0,
CurrExperience = 0,
Description = string.Empty,
};
cacheSet.Add(usergeneral);
}
}
}
示例6: ProcessCmd
protected override void ProcessCmd(string[] args)
{
int taskID = args.Length > 0 ? args[0].Trim().ToInt() : 0;
GameUser user = new PersonalCacheStruct<GameUser>().FindKey(UserID);
if (user == null)
{
UserCacheGlobal.Load(UserID);
user = new PersonalCacheStruct<GameUser>().FindKey(UserID);
}
var taskList = StoryTaskInfo.GetNextTask(taskID);
foreach (StoryTaskInfo taskInfo in taskList)
{
if (taskInfo.CountryID != CountryType.None && user.CountryID != taskInfo.CountryID)
{
continue;
}
var cacheSet = new PersonalCacheStruct<UserTask>();
UserTask userTask = cacheSet.FindKey(UserID, taskInfo.TaskID);
if (userTask == null)
{
userTask = new UserTask
{
TaskID = taskInfo.TaskID,
UserID = UserID,
TaskType = taskInfo.TaskType,
TaskState = TaskState.AllowTake,
CreateDate = DateTime.Now
};
cacheSet.Add(userTask);
}
else
{
userTask.TaskState = TaskState.AllowTake;
}
}
}
示例7: AddUserAbility
/// <summary>
/// 添加玩家魂技
/// </summary>
/// <param name="abilityId"></param>
/// <param name="userId"></param>
private void AddUserAbility(int abilityId, int userId, int generalID, int position)
{
PersonalCacheStruct<UserAbility> _cacheSetAbility = new PersonalCacheStruct<UserAbility>();
var userAbility = _cacheSetAbility.FindKey(userId.ToString());
var ability = userAbility != null && userAbility.AbilityList != null
? userAbility.AbilityList.Find(s => s.AbilityID == abilityId)
: null;
var abilityLv = new ShareCacheStruct<AbilityLvInfo>().FindKey(abilityId, 1);
int experienceNum = abilityLv != null ? abilityLv.Experience : 0;
if (userAbility == null)
{
userAbility = new UserAbility(userId);
ability = new Ability();
userAbility.CreateDate = DateTime.Now;
ability.UserItemID = Guid.NewGuid().ToString();
ability.AbilityID = abilityId;
ability.AbilityLv = 1;
ability.GeneralID = generalID;
ability.ExperienceNum = experienceNum;
ability.Position = position;
userAbility.AbilityList.Add(ability);
_cacheSetAbility.Add(userAbility);
}
else
{
ability = new Ability();
ability.UserItemID = Guid.NewGuid().ToString();
userAbility.CreateDate = DateTime.Now;
ability.AbilityID = abilityId;
ability.AbilityLv = 1;
ability.GeneralID = generalID;
ability.Position = position;
ability.ExperienceNum = experienceNum;
userAbility.AbilityList.Add(ability);
}
}
示例8: TakeAction
//.........这里部分代码省略.........
// userPlot.UpdateNotify(obj =>
// {
// userPlot.ItemList.Clear();
// return true;
// });
//}
if (npcInfo.NpcSeqNo == 1)
{
userPlot.ItemList.Clear();
ContextUser.IsItem = false;
}
userPlotCombat = cacheSet.FindKey(ContextUser.UserID, PlotNpcID);
if (userPlotCombat != null && userPlotCombat.IsWin && ContextUser.UserExtend != null &&
PlotNpcID == ContextUser.UserExtend.PlotNpcID && !ContextUser.IsItem)
{
prizeItems = PlotHelper.GetPlotMonsterItems(Uid, npcInfo.PlotNpcID);
}
else
{
ISingleCombat plotCombater = CombatFactory.TriggerPlot(ContextUser, PlotNpcID);
if (plotCombater == null)
{
ErrorCode = LanguageManager.GetLang().ErrorCode;
ErrorInfo = LanguageManager.GetLang().LoadDataError;
return false;
}
if (userPlotCombat == null)
{
userPlotCombat = new UserPlotCombat()
{
UserID = ContextUser.UserID,
PlotNpcID = PlotNpcID
};
cacheSet.Add(userPlotCombat);
userPlotCombat = cacheSet.FindKey(ContextUser.UserID, PlotNpcID);
}
userPlotCombat.PlotID = npcInfo.PlotID;
userPlotCombat.CombatDate = DateTime.Now;
userPlotCombat.IsWin = plotCombater.Doing();
if (!userPlotCombat.IsWin)
{
userPlotCombat.OverNum += 1;
}
ContextUser.IsItem = npcInfo.NpcSeqNo == 1 ? false : ContextUser.IsItem;
combatProcessList = (CombatProcessContainer)plotCombater.GetProcessResult();
userPlotCombat.GeneralNum = combatProcessList.AttackList.Count;
userPlotCombat.GeneralOverNum = GetOverGeneralNum(combatProcessList.AttackList.ToList());
//userPlotCombat.CombatProcess = JsonUtils.Serialize(combatProcessList);
int generalNum = combatProcessList.DefenseList.FindAll(s => s.LiveNum > 0).Count;
if (userPlotCombat.IsWin)
{
if (ContextUser.UserExtend != null)
{
ContextUser.UserExtend.UpdateNotify(obj =>
{
ContextUser.UserExtend.PlotStatusID = npcInfo.PlotID;
ContextUser.UserExtend.PlotNpcID = PlotNpcID;
ContextUser.UserExtend.MercenarySeq = MathUtils.Addition(npcInfo.NpcSeqNo, (short)1);
ContextUser.UserExtend.IsBoss = npcInfo.IsBoss; //是否最后一个副本npc
return true;
});
}
//玩家通过一个城市的所有副本时,增加聊天频道系统提示
if (userPlot.PlotStatus != PlotStatus.Completed && npcInfo.IsBoss) //玩家此副本胜利
{
var city = new ShareCacheStruct<CityInfo>().FindKey(plotInfo.CityID);
示例9: processAdd
string processAdd(string parm)
{
string info = "";
string[] p = parm.Split(',');
string addWhich = p[0];
string name = p[1];
int score = int.Parse(p[2]) ;
if("ranking"==addWhich)
{
var cache = new PersonalCacheStruct<GameUser>();
var urCache =new ShareCacheStruct<UserRanking>();
var gu = new GameUser();
gu.UserId = (int)cache.GetNextNo();
gu.NickName = name;
gu.Score = score;
gu.Identify = "identify_"+name;
var ur = new UserRanking();
ur.UserID = gu.UserId;
ur.UserName = name;
ur.Score = score;
cache.Add(gu);
urCache.Add(ur);
info = "增加排行榜数据成功";
}
return info;
}
示例10: TakeAction
public override bool TakeAction()
{
Request1011Pack.EnumOptType opt = requestPack.optype;
var cache = new PersonalCacheStruct<RealUserInfo>();
RealUserInfo rui = null;
int keyId = utils.KeyUInt2Int(requestPack.the3rdUserID);
string keyIdString = keyId.ToString();
if(opt == Request1011Pack.EnumOptType.add)
{
rui = cache.FindKey(keyIdString);
if(null != rui)
{
responsePack.errorCode = (byte)Response1011Pack.EnumErrorCode.has_data_for_add;
return true;
}
rui = new RealUserInfo();
rui.the3rdUserI = utils.KeyUInt2Int( requestPack.the3rdUserID);
rui.name = requestPack.realName;
rui.PhoneNum = requestPack.phoneNum;
rui.address = requestPack.address;
cache.Add(rui);
}
else if (Request1011Pack.EnumOptType.modify == opt)
{
rui = cache.FindKey(keyIdString);
if (null == rui)
{
responsePack.errorCode = (byte)Response1011Pack.EnumErrorCode.not_find_for_modify;
return true;
}
rui.ModifyLocked(() => {
rui.name = requestPack.realName;
rui.PhoneNum = requestPack.phoneNum;
rui.address = requestPack.address;
});
}
else if (Request1011Pack.EnumOptType.get == opt)
{
rui = cache.FindKey(keyIdString);
if (null == rui)
{
responsePack.errorCode = (byte)Response1011Pack.EnumErrorCode.not_find_for_get;
return true;
}
}
else
{
responsePack.errorCode = (byte)Response1011Pack.EnumErrorCode.error_opt;
return true;
}
responsePack.errorCode = (byte)Response1011Pack.EnumErrorCode.ok;
responsePack.realName = rui.name;
responsePack.phoneNum = rui.PhoneNum;
responsePack.address = rui.address;
return true;
}
示例11: happyMapInit
void happyMapInit()
{
var happMapCache = new PersonalCacheStruct<The3rdUserIDMap>();
var map = happMapCache.FindKey("888");
if (null == map)
{
map = new The3rdUserIDMap();
map.Index = 888;
happMapCache.Add(map);
}
}
示例12: DoWeixinSign
private bool DoWeixinSign()
{
GameUser gameUser = new PersonalCacheStruct<GameUser>().FindKey(Uid);
if (gameUser != null)
{
var registrationRewardArray = ConfigEnvSet.GetString("User.RegistrationReward").Split(',');
int registrationNum = ConfigEnvSet.GetInt("User.RegistrationNum");
var cacheSetRegistration = new PersonalCacheStruct<UserRegistration>();
var userRegistration = cacheSetRegistration.FindKey(gameUser.UserID);
if (userRegistration == null)
{
userRegistration = new UserRegistration(gameUser.UserID.ToInt());
userRegistration.RegistrationNum = 1;
cacheSetRegistration.Add(userRegistration);
}
if (registrationRewardArray.Length > 0)
{
_gold = registrationRewardArray[0].ToInt();
}
if (userRegistration.RegistrationDate.Year == DateTime.Now.Year && userRegistration.RegistrationDate.Month == DateTime.Now.Month && userRegistration.RegistrationNum >= registrationNum)
{
this.ErrorCode = LanguageManager.GetLang().ErrorCode;
this.ErrorInfo = string.Format(LanguageManager.GetLang().St1000_RegistrationNum, registrationNum);
return false;
}
if (userRegistration.RegistrationDate.Date == DateTime.Now.Date)
{
this.ErrorCode = LanguageManager.GetLang().ErrorCode;
this.ErrorInfo = LanguageManager.GetLang().St1000_IsRegistration;
return false;
}
if (userRegistration.RegistrationDate.Month != DateTime.Now.Month)
{
userRegistration.RegistrationNum = 1;
userRegistration.RegistrationDate = DateTime.Now;
}
else
{
userRegistration.RegistrationNum = MathUtils.Addition(userRegistration.RegistrationNum, 1);
userRegistration.RegistrationDate = DateTime.Now;
}
int index = userRegistration.RegistrationNum - 1;
if (registrationRewardArray.Length > index)
{
_gold = registrationRewardArray[index].ToInt();
}
gameUser.GiftGold = MathUtils.Addition(gameUser.GiftGold, _gold);
this.ErrorInfo = string.Format(LanguageManager.GetLang().St1000_GetRegistrationGold, _gold);
return true;
}
this.ErrorCode = LanguageManager.GetLang().ErrorCode;
this.ErrorInfo = LanguageManager.GetLang().St1000_UserExistent;
return false;
}
示例13: CreateGameUser
private GameUser CreateGameUser(bool userSex)
{
GameUser userEntity = new GameUser
{
UserID = UserId.ToString(),
CountryID = 0,
CityID = ConfigEnvSet.GetInt("user.UserMinCityID"),
PointX = (short)ConfigEnvSet.GetInt("User.CityPointX"),
PointY = (short)ConfigEnvSet.GetInt("User.CityPointY"),
SessionID = Sid,
NickName = UserName,
Sex = userSex,
UserLv = (short)ConfigEnvSet.GetInt("User.Level"),
ObtainNum = ConfigEnvSet.GetInt("User.ObtainNum"),
EnergyNum = new GameUser().EnergyMaxNum,
MercenariesID = string.Empty,
GiftGold = ConfigEnvSet.GetInt("User.GiftGold"),
PayGold = 0,
UseGold = 0,
ItemGold = 0,
GameCoin = ConfigEnvSet.GetInt("User.GameCoin"),
ExpNum = 0,
VipLv = ConfigEnvSet.GetInt("User.VipLv"),
UserStatus = UserStatus.Normal,
MsgState = true,
GridNum = new GameUser().GridMinNum,
WarehouseNum = new GameUser().WarehouseMinNum,
QueueNum = 0,
RetailID = RetailID,
Pid = Pid,
MobileType = MobileType,
ScreenX = ScreenX,
ScreenY = ScreenY,
ClientAppVersion = ReqAppVersion,
CreateDate = DateTime.Now,
UseMagicID = new GameUser().UserMagicID,
CrystalNum = new GameUser().CrystalMinNum,
UserLocation = Location.City,
UserExtend = new GameUserExtend(),
SweepPool = new SweepPoolInfo(),
GameId = GameID,
ServerId = ServerID,
LoginTime = DateTime.Now,
DailyLoginTime = DateTime.Now
};
var cacheSet = new PersonalCacheStruct<GameUser>();
cacheSet.Add(userEntity);
cacheSet.Update();
//增加初始背包、灵件、水晶
new PersonalCacheStruct<UserItemPackage>().Add(new UserItemPackage { UserID = userEntity.UserID });
new PersonalCacheStruct<UserCrystalPackage>().Add(new UserCrystalPackage() { UserID = userEntity.UserID });
new PersonalCacheStruct<UserSparePackage>().Add(new UserSparePackage() { UserID = userEntity.UserID });
//增加初始附魔符
new PersonalCacheStruct<UserEnchant>().Add(new UserEnchant(userEntity.UserID));
//增加初始副本
new PersonalCacheStruct<UserPlotPackage>().Add(new UserPlotPackage(userEntity.UserID));
// 增加初始集邮册
new PersonalCacheStruct<UserAlbum>().Add(new UserAlbum(userEntity.UserID));
// 玩家圣吉塔
new PersonalCacheStruct<UserShengJiTa>().Add(new UserShengJiTa(userEntity.UserID.ToInt()));
return userEntity;
}
示例14: CreateMagic
private void CreateMagic(GameUser userEntity)
{
UserMagic userMagic = new UserMagic
{
UserID = userEntity.UserID,
IsEnabled = true,
MagicID = new GameUser().UserMagicID,
MagicLv = 1,
MagicType = MagicType.MoFaZhen
};
var cacheUserMagic = new PersonalCacheStruct<UserMagic>();
cacheUserMagic.Add(userMagic);
cacheUserMagic.Update();
//初始阵法
string[] gridRange = new ShareCacheStruct<MagicLvInfo>().FindKey(userMagic.MagicID, userMagic.MagicLv).GridRange.Split(new char[] { ',' });
if (gridRange.Length > 0)
{
string grid = gridRange[0];
UserEmbattle userEmbattle = new UserEmbattle
{
UserID = userEntity.UserID,
GeneralID = generalID,
MagicID = userMagic.MagicID,
Position = grid.ToShort()
};
var cacheEmbattle = new PersonalCacheStruct<UserEmbattle>();
cacheEmbattle.Add(userEmbattle);
cacheEmbattle.Update();
}
}
示例15: UpdateRecruitColdTime
/// <summary>
/// 佣兵招募冷却时间
/// </summary>
/// <param name="userID"></param>
/// <param name="recruitRule"></param>
/// <returns></returns>
public static void UpdateRecruitColdTime(string userID, RecruitRule recruitRule)
{
QueueType queueType = QueueType.ShiLiTiaoYi;
if (recruitRule.RecruitType == RecruitType.ShiLiTiaoYi.ToInt())
{
queueType = QueueType.ShiLiTiaoYi;
}
else if (recruitRule.RecruitType == RecruitType.BaiLiTiaoYi.ToInt())
{
queueType = QueueType.BaiLiTiaoYi;
}
else if (recruitRule.RecruitType == RecruitType.Golden.ToInt())
{
queueType = QueueType.Golden;
}
var cacheSet = new PersonalCacheStruct<UserQueue>();
UserQueue userQueue = cacheSet.Find(userID, s => s.QueueType == queueType);
if (userQueue == null)
{
userQueue = new UserQueue();
userQueue.QueueID = Guid.NewGuid().ToString();
userQueue.UserID = userID;
userQueue.QueueType = queueType;
cacheSet.Add(userQueue, userID.ToInt());
}
userQueue.QueueName = queueType.ToString();
userQueue.Timing = DateTime.Now;
userQueue.TotalColdTime = recruitRule.CodeTime;
userQueue.ColdTime = recruitRule.CodeTime;
userQueue.StrengNum = 1;
userQueue.IsSuspend = false;
}