playroom翻牌游戏优化
This commit is contained in:
parent
c72761d627
commit
aa7ee2a381
@ -5,6 +5,7 @@ import (
|
|||||||
"math"
|
"math"
|
||||||
decorateCfg "server/conf/decorate"
|
decorateCfg "server/conf/decorate"
|
||||||
limitedTimeEventCfg "server/conf/limited_time_event"
|
limitedTimeEventCfg "server/conf/limited_time_event"
|
||||||
|
orderCfg "server/conf/order"
|
||||||
"server/game/mod/item"
|
"server/game/mod/item"
|
||||||
GoUtil "server/game_util"
|
GoUtil "server/game_util"
|
||||||
"server/msg"
|
"server/msg"
|
||||||
@ -119,6 +120,18 @@ func (d *Decorate) GetDecorateCostItem(AreaId, DecorateId int, DecorateOffIsExis
|
|||||||
return Items, PetExp, PartItemList
|
return Items, PetExp, PartItemList
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (d *Decorate) GetNextNeedStar() int {
|
||||||
|
DecorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId)
|
||||||
|
SubAlice := GoUtil.SubSlices(DecorateAll, GoUtil.MapIntToIntSlice(d.FinishList))
|
||||||
|
orderFactor := orderCfg.GetOrderFactor(d.GetAreaId())
|
||||||
|
sort.Ints(SubAlice)
|
||||||
|
if len(SubAlice) > 0 {
|
||||||
|
NeedStar := decorateCfg.GetStarCost(d.AreaId, SubAlice[0])
|
||||||
|
return (NeedStar*orderFactor)/1000 + NeedStar
|
||||||
|
}
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
// 一键装饰
|
// 一键装饰
|
||||||
func (d *Decorate) DecorateAll(Star int, DecorateOffIsExist bool) ([]*item.Item, []*item.Item, int, []int, []interface{}, int) {
|
func (d *Decorate) DecorateAll(Star int, DecorateOffIsExist bool) ([]*item.Item, []*item.Item, int, []int, []interface{}, int) {
|
||||||
DecorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId)
|
DecorateAll := decorateCfg.GetAllSortIdByAreaId(d.AreaId)
|
||||||
|
|||||||
@ -3407,7 +3407,14 @@ func ReqPlayroomInfo(player *Player, buf []byte) error {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
PlayroomMod.SetGameId(playroom.GAME_TYPE_FILP)
|
PlayroomMod.SetGameId(playroom.GAME_TYPE_FILP)
|
||||||
PlayroomMod.SetGameRewardFlip(int(float64(PlayerData.Star)*0.03), int(float64(PlayerData.Star)*0.05), int(float64(PlayerData.Star)*0.1))
|
DecorateMod := player.PlayMod.getDecorateMod()
|
||||||
|
needStar := DecorateMod.GetNextNeedStar()
|
||||||
|
highReward := int(float64(needStar) * 0.75)
|
||||||
|
if highReward < PlayerData.Star {
|
||||||
|
PlayroomMod.SetGameRewardFlip(max(int(float64(needStar)*0.1), 10), max(int(float64(needStar)*0.3), 10), max(int(float64(needStar)*0.75), 10))
|
||||||
|
} else {
|
||||||
|
PlayroomMod.SetGameRewardFlip(max(10, int(float64(PlayerData.Star)*0.1)), max(10, int(float64(PlayerData.Star)*0.5)), max(PlayerData.Star, 10))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
player.PlayMod.save()
|
player.PlayMod.save()
|
||||||
player.PlayroomVisit(Targer)
|
player.PlayroomVisit(Targer)
|
||||||
|
|||||||
@ -92,8 +92,9 @@ func TestFixUserData(t *testing.T) {
|
|||||||
func TestRandInt(t *testing.T) {
|
func TestRandInt(t *testing.T) {
|
||||||
p1 := new(game.Player)
|
p1 := new(game.Player)
|
||||||
p1.InitPlayer("3625212")
|
p1.InitPlayer("3625212")
|
||||||
MailMod := p1.GetMailMod()
|
DecorateMod := p1.GetDecorateMod()
|
||||||
MailMod.BackData()
|
needStar := DecorateMod.GetNextNeedStar()
|
||||||
|
fmt.Printf("Next need star: %d\n", needStar)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestEndless(t *testing.T) {
|
func TestEndless(t *testing.T) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user