Ver Fonte

掷色子恢复

Administrator há 8 meses atrás
pai
commit
086da4416f

+ 15 - 14
extend/slice/slice_test.go

@@ -9,21 +9,22 @@ import (
 	"time"
 )
 
-func TestUnique(t *testing.T) {
-	list := Unique[string]("1", "2", "3", "1")
-	fmt.Println(list)
-}
+//func TestUnique(t *testing.T) {
+//	list := Unique[string]("1", "2", "3", "1")
+//	fmt.Println(list)
+//}
 
-var currentTime = int64(1727366400)
+var currentTime = int64(1727683200)
 
 func TestUniques(t *testing.T) {
-	s1 := []string{"1", "2", "3"}
-	s2 := []string{"1", "2", "3"}
-
-	list := Uniques[string](s1, s2)
-	fmt.Println(list)
+	//s1 := []string{"1", "2", "3"}
+	//s2 := []string{"1", "2", "3"}
+	//
+	//list := Uniques[string](s1, s2)
+	//fmt.Println(list)
 
-	var roolDay = time.Now().Unix()
+	// 上次恢复时间
+	var roolDay = int64(1727593200)
 
 	for i := 0; i < 10; i++ {
 		RefreshRoll(&roolDay)
@@ -32,7 +33,7 @@ func TestUniques(t *testing.T) {
 }
 
 func RefreshRoll(roolDay *int64) bool {
-	arr := []string{"14", "16", "24"}
+	arr := []string{"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"}
 	slice := make([]int, 0)
 	for _, s := range arr {
 		hour, _ := mhayaString.ToInt(s)
@@ -41,7 +42,7 @@ func RefreshRoll(roolDay *int64) bool {
 
 	// 小时数,24小时制
 	//curHour := time.Now().Hour()
-	curHour := 24
+	curHour := 16
 	rollHour := time.Unix(*roolDay, 0).Hour()
 
 	isToday := mhayaTime.CreateFromTimestamp(*roolDay).IsToday()
@@ -52,7 +53,7 @@ func RefreshRoll(roolDay *int64) bool {
 	}
 
 	fmt.Println("slice:", slice)
-	if slices.Contains(slice, curHour) && isToday {
+	if slices.Contains(slice, curHour) {
 		*roolDay = currentTime
 		fmt.Println(" execute ==> num := p.Item[ItemRoll].AddSameTwo()")
 		return true

+ 9 - 9
game/config/data/achieveTaskConfig.json

@@ -1,11 +1,11 @@
 [
-		{"ID":1,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://x.com/Mhaya_Official","Order":2},
-		{"ID":2,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://t.me/mhayafree","Order":1},
-		{"ID":3,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://www.youtube.com/@mhayaPlaytoearn","Order":3},
-		{"ID":4,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://discord.com/invite/mhaya","Order":4},
-		{"ID":5,"Enable":1,"Type":2,"Condition":{"min":1,"max":5},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"","Order":6},
-		{"ID":6,"Enable":1,"Type":2,"Condition":{"min":6,"max":10},"Reward":[{"itemBaseType":2,"itemID":6,"amount":15},{"itemBaseType":1,"itemID":7,"amount":3}],"Url":"","Order":7},
-		{"ID":7,"Enable":1,"Type":2,"Condition":{"min":11,"max":20},"Reward":[{"itemBaseType":2,"itemID":6,"amount":20},{"itemBaseType":1,"itemID":7,"amount":4}],"Url":"","Order":8},
-		{"ID":8,"Enable":1,"Type":2,"Condition":{"min":21,"max":30},"Reward":[{"itemBaseType":2,"itemID":6,"amount":25},{"itemBaseType":1,"itemID":7,"amount":5}],"Url":"","Order":9},
-		{"ID":9,"Enable":1,"Type":3,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://t.me/mhayafree","Order":5}
+		{"ID":1,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://x.com/Mhaya_Official","Order":2,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/xicon.png"},
+		{"ID":2,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://t.me/mhayafree","Order":1,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/tgicon.png"},
+		{"ID":3,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://www.youtube.com/@mhayaPlaytoearn","Order":3,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/ytbicon1.png"},
+		{"ID":4,"Enable":1,"Type":1,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://discord.com/invite/mhaya","Order":4,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/discord.png"},
+		{"ID":5,"Enable":1,"Type":2,"Condition":{"min":1,"max":5},"Reward":[{"itemBaseType":2,"itemID":6,"amount":20},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"","Order":6,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/ytbicon.png"},
+		{"ID":6,"Enable":1,"Type":2,"Condition":{"min":6,"max":10},"Reward":[{"itemBaseType":2,"itemID":6,"amount":20},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"","Order":7,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/ytbicon.png"},
+		{"ID":7,"Enable":1,"Type":2,"Condition":{"min":11,"max":20},"Reward":[{"itemBaseType":2,"itemID":6,"amount":20},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"","Order":8,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/ytbicon.png"},
+		{"ID":8,"Enable":1,"Type":2,"Condition":{"min":21,"max":999999},"Reward":[{"itemBaseType":2,"itemID":6,"amount":20},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"","Order":9,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/ytbicon.png"},
+		{"ID":9,"Enable":1,"Type":3,"Condition":{"min":1,"max":1},"Reward":[{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":1,"itemID":7,"amount":2}],"Url":"https://t.me/mhayafree","Order":5,"Icon":"https://mhaya-img.s3.ap-southeast-1.amazonaws.com/img/roll/xicon.png"}	
 ]

+ 13 - 13
game/config/data/discreteRuleConfig.json

@@ -1,15 +1,15 @@
 [
-		{"ID":1,"Reward":[{"itemBaseType":1,"itemID":1,"amount":30},{"itemBaseType":2,"itemID":6,"amount":30}],"Condition":""},
-		{"ID":2,"Reward":[{"itemBaseType":1,"itemID":5,"amount":10000}],"Condition":"2"},
-		{"ID":3,"Reward":[{"itemBaseType":1,"itemID":5,"amount":30000}],"Condition":"2"},
-		{"ID":4,"Reward":[{"itemBaseType":1,"itemID":5,"amount":20000},{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":7,"amount":3}],"Condition":"2"},
-		{"ID":5,"Reward":null,"Condition":"21600,1800"},
-		{"ID":6,"Reward":[{"itemBaseType":1,"itemID":7,"amount":10}],"Condition":"30"},
-		{"ID":7,"Reward":[{"itemBaseType":1,"itemID":7,"amount":1}],"Condition":"86400"},
-		{"ID":8,"Reward":[{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":1,"amount":10}],"Condition":""},
-		{"ID":9,"Reward":null,"Condition":"7"},
-		{"ID":10,"Reward":null,"Condition":"1"},
-		{"ID":11,"Reward":null,"Condition":"1"},
-		{"ID":12,"Reward":null,"Condition":"4,6"},
-		{"ID":13,"Reward":null,"Condition":"0.1,500"}
+	{"ID":1,"Reward":[{"itemBaseType":1,"itemID":1,"amount":150},{"itemBaseType":2,"itemID":6,"amount":150}],"Condition":""},
+	{"ID":2,"Reward":[{"itemBaseType":1,"itemID":5,"amount":10000}],"Condition":"2"},
+	{"ID":3,"Reward":[{"itemBaseType":1,"itemID":5,"amount":30000}],"Condition":"2"},
+	{"ID":4,"Reward":[{"itemBaseType":1,"itemID":5,"amount":20000},{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":7,"amount":3}],"Condition":"2"},
+	{"ID":6,"Reward":[{"itemBaseType":1,"itemID":7,"amount":10}],"Condition":"30"},
+	{"ID":7,"Reward":[{"itemBaseType":1,"itemID":7,"amount":1}],"Condition":"86400"},
+	{"ID":8,"Reward":[{"itemBaseType":1,"itemID":5,"amount":10000},{"itemBaseType":2,"itemID":6,"amount":10},{"itemBaseType":1,"itemID":1,"amount":10}],"Condition":""},
+	{"ID":9,"Reward":null,"Condition":"7"},
+	{"ID":10,"Reward":null,"Condition":"1"},
+	{"ID":11,"Reward":null,"Condition":"1"},
+	{"ID":12,"Reward":null,"Condition":"4,6"},
+	{"ID":13,"Reward":null,"Condition":"0.2,1"},
+	{"ID":14,"Reward":null,"Condition":"1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24"}
 ]

+ 2 - 0
game/game_cluster/internal/mdb/models/achieveTask.go

@@ -18,6 +18,8 @@ const (
 	UCashOutConfig       = 10
 	TonCashOutConfig     = 11
 	NewPlayer10Draw      = 12
+	InviteRatio          = 13
+	RefreshRollNew       = 14
 )
 
 type AchieveTaskBase struct {

+ 5 - 5
game/game_cluster/internal/mdb/models/player.go

@@ -225,14 +225,14 @@ func (p *Player) LevelUp() bool {
 }
 
 func (p *Player) RefreshRoll() bool {
-	ret, ok := data.DiscreteRuleConfig.Get(RefreshRoll)
+	ret, ok := data.DiscreteRuleConfig.Get(RefreshRollNew)
 	if !ok {
 		return false
 	}
 	arr := strings.Split(ret.Condition, ",")
-	if len(arr) != 2 {
-		return false
-	}
+	//if len(arr) != 2 {
+	//	return false
+	//}
 
 	slice := make([]int, 0)
 	for _, s := range arr {
@@ -254,7 +254,7 @@ func (p *Player) RefreshRoll() bool {
 		})
 	}
 
-	if slices.Contains(slice, curHour) && isToday {
+	if slices.Contains(slice, curHour) {
 		p.RollDay = mhayaTime.Now().Unix()
 		num := p.Item[ItemRoll].AddSameTwo(8)
 		if num > 0 {

+ 1 - 1
game/game_cluster/nodes/game/module/player/invite.go

@@ -113,7 +113,7 @@ func (p *actorPlayer) inviteRewardRatio() (*param.InviteRatioResp, int32) {
 		return nil, code.PlayerNotLogin
 	}
 
-	inviteReword, _ := data.DiscreteRuleConfig.Get(13)
+	inviteReword, _ := data.DiscreteRuleConfig.Get(models.InviteRatio)
 	split := strings.Split(inviteReword.Condition, ",")
 	ratio, _ := strconv.ParseFloat(split[0], 64)
 	minClaim, _ := strconv.Atoi(split[1])

+ 1 - 1
game/game_cluster/nodes/game/module/player/stat.go

@@ -54,7 +54,7 @@ func (p *actorPlayer) playerStart() {
 }
 
 func (p *actorPlayer) inviteScore(num int) {
-	scoreRatio, _ := data.DiscreteRuleConfig.Get(13)
+	scoreRatio, _ := data.DiscreteRuleConfig.Get(models.InviteRatio)
 	split := strings.Split(scoreRatio.Condition, ",")
 	ratio, _ := strconv.ParseFloat(split[0], 64)
 	inviteScore := math.Floor(float64(num) * ratio)