From f198885f31c9c7eb19eb28adce562e39e64d581c Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期五, 18 七月 2025 16:23:11 +0800 Subject: [PATCH] 121 【武将】武将系统-服务端(属性计算、战斗力计算;新角色初始给默认装备、默认阵容武将;) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py | 128 ------------------------------------------ 1 files changed, 2 insertions(+), 126 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py index caa2f54..ec02178 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Skill/SkillShell.py @@ -2594,8 +2594,8 @@ # @remarks 刷新玩家场景状态 def ProcessPlayerAreaState(curPlayer): #初始化所有的场景buff状态 - playerControl = PlayerControl.PlayerControl(curPlayer) - playerControl.InitMapBuffState() + #playerControl = PlayerControl.PlayerControl(curPlayer) + #playerControl.InitMapBuffState() buffManager = curPlayer.GetMapBuff() @@ -2621,89 +2621,6 @@ callFunc(curPlayer, curEffect) return -#--------------------------------------------------------------------- -##添加装备触发的Buff -# @param curPlayer 玩家实例 -# @param curEquip 装备实例 -# @return 返回值无意义 -# @remarks 添加装备触发的Buff -def RefreshSkillBuffByEquip(curPlayer, curEquip) : - #一般装备新增Buff - __DoEquip_AddBuff(curPlayer, curEquip) - return - -#--------------------------------------------------------------------- -##添加装备触发的Buff, 一般装备新增Buff -# @param curPlayer 玩家实例 -# @param curEquip 装备实例 -# @return 返回值无意义 -# @remarks 添加装备触发的Buff, 一般装备新增Buff -def __DoEquip_AddBuff(curPlayer, curEquip): - gameData = GameWorld.GetGameData() - playerVehicle = curPlayer.GetPlayerVehicle() - houseState = curPlayer.GetPlayerRidehorseState() - - for index in range(0 , curEquip.GetAddSkillCount()): - curSkillID = curEquip.GetAddSkill(index) - - if curSkillID == 0: - continue - - #通过技能ID获得使用技能 - curSkill = gameData.GetSkillBySkillID(curSkillID) - - if curSkill == None : - GameWorld.Log("装备触发技能,物品表错误 curSkillID = %s"%(curSkillID) , curPlayer.GetPlayerID()) - continue - - #骑马触发技能 - houseSkill = ChConfig.Def_Skill_TypeID_Speed - curSkillType = curSkill.GetSkillTypeID() - - if not SkillCommon.IsBuff(curSkill): - continue - - if curSkillType in houseSkill: - #不使用,不添加buff - if playerVehicle != IPY_GameWorld.pvHorse : - continue - - if curSkillType == houseSkill[0] and houseState != IPY_GameWorld.prsNormal : - continue - - if curSkillType == houseSkill[1] and houseState != IPY_GameWorld.prsRun : - continue - - #添加Buff - BuffSkill.AddBuffNoRefreshState(curPlayer, IPY_GameWorld.bfEquipBuff, curSkill, 0, [], buffOwner = curPlayer) - - return -#--------------------------------------------------------------------- -##刷新buff的效果 -# @param buffState Buff管理器 -# @param sameEffectCanWork 是否可以叠加相同效果, <sameEffectCanWork> : 效果是否可以叠加, 默认为否 -# @return 返回值无意义 -# @remarks 刷新buff的效果 (参数 -> buff管理器,是否叠加) -def __RefreshSkillBuffEffect(buffState, sameEffectCanWork = False): - return - #=========================================================================== - # buffState.ClearEffects() - # for buffIndex in range(0, buffState.GetBuffCount()): - # curBuff = buffState.GetBuff(buffIndex) - # buffValue = curBuff.GetValue() - # curSkill = curBuff.GetSkill() - # skillID = curSkill.GetSkillID() - # if skillID == 0: - # continue - # - # for effectIndex in range(0, curSkill.GetEffectCount()): - # curEffect = curSkill.GetEffect(effectIndex) - # effectID = curEffect.GetEffectID() - # if effectID == 0: - # continue - # - # buffState.AddEffect(curEffect, buffValue, skillID, curBuff.GetOwnerID(), curBuff.GetOwnerType()) - #=========================================================================== #--------------------------------------------------------------------- ##计算效果值 @@ -2807,35 +2724,6 @@ return ChConfig.Def_CalcAttrIndexDict[(isBaseEff, calcType)] - -##刷新玩家所有影响属性的Buff,添加时只重计算同类型BUFF,删除时刷新所有类型BUFF -# @param curPlayer 玩家实例 -# @param buffType buff类型 -1代表全部刷性 -# @return 返回值无意义 -def RefreshPlayerBuffOnAttrAddEffect(curPlayer, buffType=-1): - return -#=============================================================================== -# GameWorld.DebugLog("Start RefreshPlayerBuffOnAttrAddEffect!!!") -# -# #[[BuffState, CanPileup]] -# if buffType == -1: -# buffRefreshList = [ -# [curPlayer.GetBuffState(), False], [curPlayer.GetDeBuffState(), False], -# [curPlayer.GetAura(), False], [curPlayer.GetIncBuff(), True], -# [curPlayer.GetPassiveBuf(), True], [curPlayer.GetEquipBuff(), True], -# ] -# else: -# #只重计算改变的BUFF, 这里不防范非属性类型BUFF外层过滤 -# buffManagerInfo = SkillCommon.GetBuffManagerByBuffType(curPlayer, buffType) -# buffRefreshList = [[buffManagerInfo[0], buffManagerInfo[2]]] -# -# #执行刷新逻辑 -# __DoRefreshBuff(buffRefreshList) -# -# return -#=============================================================================== - - # 通过技能ID删除buff对应的效果ID def ClearBuffEffectBySkillID(curObj, skillID, ownerID, ownerType): curSkill = GameWorld.GetGameData().GetSkillBySkillID(skillID) @@ -2936,18 +2824,6 @@ for i in effectIndexList: buffState.DeleteEffectByIndex(i) - - -##刷新管理器中的Buff -# @param buffRefreshList Buff刷新列表[[BuffState, CanPileup]] -# @return 返回值无意义 -# @remarks 按照叠加规则, 刷新指定管理中的Buff -def __DoRefreshBuff(buffRefreshList): - for buffState, canPileUp in buffRefreshList: - __RefreshSkillBuffEffect(buffState, canPileUp) - - return - ##计算行为BUFF对人物行为状态的改变 # @param curPlayer 玩家实例 -- Gitblit v1.8.0