恢复体力
parent
befccd4e38
commit
fc76607c69
|
@ -1,3 +1,3 @@
|
||||||
Id BornItem SpeedFormula InitialEnergy EnergyRecoverSpeed ActionPowerRormula Speed HeroNumlimit EquipNumlimit WorldTalking BornPosition
|
Id BornItem SpeedFormula InitialEnergy EnergyRecoverSpeed ActionPowerRormula Speed HeroNumlimit EquipNumlimit WorldTalking BornPosition
|
||||||
int mut,int#int,2 mut,float#float,1 int mut,int#int,1 mut,int#int,1 mut,int#int,1 int int int mut,int#int,1
|
int mut,int#int,2 mut,float#float,1 int mut,int#int,1 mut,int#int,1 mut,int#int,1 int int int mut,int#int,1
|
||||||
1 10008#1|10013#1|10023#1|1503#8 0#0#0.3164#0 100 60#1 0#0#1#0 70#100 999 9999 1 08#19
|
1 10008#1|10013#1|10023#1|1503#8|2#60 0#0#0.3164#0 100 60#1 0#0#1#0 70#100 999 9999 1 08#19
|
||||||
|
|
|
@ -212,20 +212,35 @@ public class MapManager extends MongoBase {
|
||||||
if (itemMap.containsKey(Global.STAMINA)) {
|
if (itemMap.containsKey(Global.STAMINA)) {
|
||||||
itemNum = itemMap.get(Global.STAMINA).getItemNum();
|
itemNum = itemMap.get(Global.STAMINA).getItemNum();
|
||||||
}
|
}
|
||||||
MapManager mapManager = user.getMapManager();
|
Item item = user.getItemManager().getItemMap().get(Global.STAMINA);
|
||||||
int lastUpdateEnergyTime = mapManager.getLastUpdateEnergyTime();
|
int updateTime = (int)(System.currentTimeMillis()/1000);
|
||||||
if(itemNum < playerInfoManager.getMaxStamina()){
|
int lastUpdateEnergyTime = item.getEndingTime();
|
||||||
int updateTime = (int)(System.currentTimeMillis()/1000);
|
if ((updateTime -lastUpdateEnergyTime)/60 >= 1){
|
||||||
int[] energyRecoverSpeed = SGameSetting.getGameSetting().getEnergyRecoverSpeed();
|
if(itemNum < playerInfoManager.getMaxStamina()){
|
||||||
int addValue = (updateTime - lastUpdateEnergyTime)/60/energyRecoverSpeed[1] * energyRecoverSpeed[0];
|
int[] energyRecoverSpeed = SGameSetting.getGameSetting().getEnergyRecoverSpeed();
|
||||||
if(addValue != 0){
|
int addValue = (updateTime - lastUpdateEnergyTime)/60/energyRecoverSpeed[1] * energyRecoverSpeed[0];
|
||||||
int curEnergy = MathUtils.setBetweenWithMax(itemNum + addValue,0,SGameSetting.getGameSetting().getInitialEnergy());
|
if(addValue != 0){
|
||||||
ItemUtil.drop(user, StringUtil.parseFiledInt2( Global.STAMINA+"#"+curEnergy));
|
int curEnergy = MathUtils.setBetweenWithMax(itemNum + addValue,0,SGameSetting.getGameSetting().getInitialEnergy());
|
||||||
mapManager.setLastUpdateEnergyTime(updateTime);
|
item.setItemNum(curEnergy>playerInfoManager.getMaxStamina()?playerInfoManager.getMaxStamina():curEnergy);
|
||||||
|
setLastUpdateEnergyTime(item, updateTime, lastUpdateEnergyTime);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
setLastUpdateEnergyTime(item, updateTime, lastUpdateEnergyTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static void setLastUpdateEnergyTime(Item item, int updateTime, int lastUpdateEnergyTime) throws Exception {
|
||||||
|
int time = lastUpdateEnergyTime + ((updateTime -lastUpdateEnergyTime)/60 )* 60;
|
||||||
|
item.setEndingTime(time);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String [] args){
|
||||||
|
int lastUpdateEnergyTime = 1552170600;
|
||||||
|
int nowTime = 1552170735;
|
||||||
|
int time = lastUpdateEnergyTime + ((nowTime -lastUpdateEnergyTime)/60 )* 60;
|
||||||
|
System.out.println(time);
|
||||||
|
}
|
||||||
public void setLastUpdateEnergyTime(int lastUpdateEnergyTime) {
|
public void setLastUpdateEnergyTime(int lastUpdateEnergyTime) {
|
||||||
updateString("lastUpdateEnergyTime", lastUpdateEnergyTime);
|
updateString("lastUpdateEnergyTime", lastUpdateEnergyTime);
|
||||||
this.lastUpdateEnergyTime = lastUpdateEnergyTime;
|
this.lastUpdateEnergyTime = lastUpdateEnergyTime;
|
||||||
|
|
|
@ -396,12 +396,15 @@ public class ItemUtil {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public static List<CommonProto.Item > getAllItem(User user){
|
public static List<CommonProto.Item > getAllItem(User user) throws Exception {
|
||||||
List<CommonProto.Item > itemList = new ArrayList<>();
|
List<CommonProto.Item > itemList = new ArrayList<>();
|
||||||
ItemManager itemManager = user.getItemManager();
|
ItemManager itemManager = user.getItemManager();
|
||||||
Map<Integer, Item> itemMap = itemManager.getItemMap();
|
Map<Integer, Item> itemMap = itemManager.getItemMap();
|
||||||
if (itemMap.size() !=0 ){
|
if (itemMap.size() !=0 ){
|
||||||
for (Map.Entry<Integer, Item> entry :itemMap.entrySet()){
|
for (Map.Entry<Integer, Item> entry :itemMap.entrySet()){
|
||||||
|
if (entry.getKey() ==Global.STAMINA){
|
||||||
|
MapManager.getEnergy(user);
|
||||||
|
}
|
||||||
itemList.add(CBean2Proto.getItem(entry.getValue(),-1));
|
itemList.add(CBean2Proto.getItem(entry.getValue(),-1));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue