促销在线参数控制时间

This commit is contained in:
xiaohui.wang 2022-04-14 17:39:12 +08:00
parent 3d613ef5cb
commit ffe5d28fa4
6 changed files with 54 additions and 9 deletions

View File

@ -45,8 +45,21 @@
/// <summary> /// <summary>
/// LOG开关 /// 切换页签
/// </summary> /// </summary>
public static JoypacOnlineParam SwitchPage = new JoypacOnlineParam("SwitchPage", "300"); public static JoypacOnlineParam SwitchPage = new JoypacOnlineParam("SwitchPage", "300");
/// <summary>
/// 促销时间1
/// </summary>
public static JoypacOnlineParam SaleTime1 = new JoypacOnlineParam("SaleTime1", "12");
/// <summary>
/// 促销时间2
/// </summary>
public static JoypacOnlineParam SaleTime2 = new JoypacOnlineParam("SaleTime2", "18");
/// <summary>
/// 促销视频时间
/// </summary>
public static JoypacOnlineParam SaleVideoTime = new JoypacOnlineParam("SaleVideoTime", "120");
} }

View File

@ -64,11 +64,11 @@
public const string CookSuccess = "CookSuccess"; public const string CookSuccess = "CookSuccess";
public const string SwitchPage = "SwitchPage"; public const string SwitchPage = "SwitchPage";
public const string Butter = "Butter"; public const string Butter = "Recipe1";
public const string StrawBerry = "StrawBerry"; public const string StrawBerry = "Recipe2";
public const string Sale = "Sale"; public const string Sale = "Discount";
//public const string SpendCoin = "SpendCoin"; //public const string SpendCoin = "SpendCoin";
//public const string Noadspage = "Noadspage"; //public const string Noadspage = "Noadspage";

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 4.7 KiB

View File

@ -43,7 +43,7 @@ public class ShopHeaderTabView : MonoBehaviour
{ {
if (null!= freshSale) if (null!= freshSale)
{ {
GameDataManager.sale = GameDataManager.GetTimeStamp(dateTime) +10; GameDataManager.sale = GameDataManager.GetTimeStamp(dateTime) + JoypacUtils.OnlineParametersIntByJoypacSDK(StaticOnlineParams.SaleVideoTime);
freshSale(true); freshSale(true);
} }
@ -54,7 +54,7 @@ public class ShopHeaderTabView : MonoBehaviour
public IEnumerator SaleTime() public IEnumerator SaleTime()
{ {
dateTime = DateTime.Now; dateTime = DateTime.Now;
if (dateTime.Hour==12|| dateTime.Hour == 19) if (dateTime.Hour== JoypacUtils.OnlineParametersIntByJoypacSDK(StaticOnlineParams.SaleTime1) || dateTime.Hour == JoypacUtils.OnlineParametersIntByJoypacSDK(StaticOnlineParams.SaleTime2))
{ {
m_videobutton.gameObject.SetActive(false); m_videobutton.gameObject.SetActive(false);
// timetextObject.SetActive(true); // timetextObject.SetActive(true);
@ -81,6 +81,8 @@ public class ShopHeaderTabView : MonoBehaviour
{ {
long videotime = GameDataManager.sale - GameDataManager.GetTimeStamp(dateTime); long videotime = GameDataManager.sale - GameDataManager.GetTimeStamp(dateTime);
timetextObject.text = string.Format("8折促销中 {0:D2}:{1:D2}", videotime/60, videotime%60); timetextObject.text = string.Format("8折促销中 {0:D2}:{1:D2}", videotime/60, videotime%60);
m_videobutton.gameObject.SetActive(false);
} }
} }

View File

@ -11,7 +11,7 @@ using UnityEngine.UI;
public class CoinManager : SingletonMonoBehaviour<CoinManager> public class CoinManager : SingletonMonoBehaviour<CoinManager>
{ {
private static readonly int Add = Animator.StringToHash("Add"); private static readonly int Add = Animator.StringToHash("Add");
private static readonly double refreshWaitTime = 300;
// CoinView // CoinView
[SerializeField] private RectTransform coinIconTransform; [SerializeField] private RectTransform coinIconTransform;
[SerializeField] private TextWithCountUpInt coinCountText; [SerializeField] private TextWithCountUpInt coinCountText;
@ -43,13 +43,27 @@ public class CoinManager : SingletonMonoBehaviour<CoinManager>
var gameData = GameDataManager.GameData; var gameData = GameDataManager.GameData;
coinvideoButton.OnClickAsObservable().Subscribe(_ => coinvideoButton.OnClickAsObservable().Subscribe(_ =>
{ {
var remaining = (int)DateTime.FromBinary(gameData.kitchenRefreshTime).Subtract(DateTime.UtcNow).TotalSeconds;
if (remaining>0)
{
GetRewardDialog.ShowColdVideoDialog(() =>
{
});
return;
}
GetRewardDialog.ShowCoinDialog(() => GetRewardDialog.ShowCoinDialog(() =>
{ {
CoinGetDialog.ShowDialog(refreshRewardCoin, () => CoinGetDialog.ShowDialog(refreshRewardCoin, () =>
{ {
CoinManager.Instance.AddCoin(refreshRewardCoin); CoinManager.Instance.AddCoin(refreshRewardCoin);
gameData.Coin = CoinManager.Instance.OwnCoin; gameData.Coin = CoinManager.Instance.OwnCoin;
gameData.kitchenRefreshTime = DateTime.UtcNow.AddSeconds(refreshWaitTime).ToBinary();
#if UNITY_EDITOR
gameData.kitchenRefreshTime = DateTime.UtcNow.AddSeconds(10).ToBinary();
#endif
GameDataManager.SaveGameData(); GameDataManager.SaveGameData();
}); });
}); });

View File

@ -18,7 +18,8 @@ namespace MyGame.Scripts
VipCustomer, VipCustomer,
Butter, Butter,
StrawBerry, StrawBerry,
Sale Sale,
Cold
} }
private static readonly string OkCallbackTag = "GetRewardDialogOkCallbackTag"; private static readonly string OkCallbackTag = "GetRewardDialogOkCallbackTag";
@ -128,6 +129,16 @@ namespace MyGame.Scripts
JoypacAnalyticsManager.DesignEvent(StaticStringsEvent.Ad, StaticStringsEvent.Impression, position); JoypacAnalyticsManager.DesignEvent(StaticStringsEvent.Ad, StaticStringsEvent.Impression, position);
SetButtonAction(closeButton, okButton, StaticStringsEvent.Sale);// AdManager.AD_PLACEMENT_VIP); SetButtonAction(closeButton, okButton, StaticStringsEvent.Sale);// AdManager.AD_PLACEMENT_VIP);
break; break;
case RewardType.Cold:
okButton.gameObject.SetActive(false);
normalWindow.SetActive(true);
movieObject.SetActive(true);
closeButton.transform.localPosition =new Vector3(0, closeButton.transform.localPosition.y,0);
messageText.text = "金币奖励冷却中...";
//position = StaticStringsEvent.Sale;
//JoypacAnalyticsManager.DesignEvent(StaticStringsEvent.Ad, StaticStringsEvent.Impression, position);
SetButtonAction(closeButton, okButton, StaticStringsEvent.Sale);// AdManager.AD_PLACEMENT_VIP);
break;
default: default:
throw new ArgumentOutOfRangeException(); throw new ArgumentOutOfRangeException();
@ -223,5 +234,10 @@ namespace MyGame.Scripts
{ {
ShowDialog(RewardType.Sale, okCallback, closeCallback); ShowDialog(RewardType.Sale, okCallback, closeCallback);
} }
public static void ShowColdVideoDialog(Action okCallback = null, Action closeCallback = null)
{
ShowDialog(RewardType.Cold, okCallback, closeCallback);
}
} }
} }