当前位置: 首页> 娱乐> 明星 > 100个 Unity小游戏系列七 -Unity 抽奖游戏专题五 刮刮乐游戏

100个 Unity小游戏系列七 -Unity 抽奖游戏专题五 刮刮乐游戏

时间:2025/7/14 22:14:12来源:https://blog.csdn.net/m0_61164038/article/details/139262571 浏览次数:0次

一、演示效果

二、知识点讲解

2.1 布局

       void CreateItems(){var rewardLists = LuckyManager.Instance.CalculateRewardId(rewardDatas, Random.Range(4, 5));reward_data_list = reward_data_list ?? new List<RewardData>();reward_data_list.Clear();for (int i = 0; i < itemCount; i++){Transform item = null;if (i + 1 <= itemRoot.childCount){item = itemRoot.GetChild(i);}else{item = Instantiate(itemRoot.GetChild(0), itemRoot);}int rewardId = -1;foreach (var index in rewardLists){if (i == index){rewardId = index; break;}}var reward_img = item.Find("Icon").GetComponent<Image>();var reward_value = item.Find("Value").GetComponent<TextMeshProUGUI>();if (rewardId < 0){reward_img.gameObject.SetActive(false);reward_value.gameObject.SetActive(false);continue;}var reward_data = LuckyManager.Instance.GetDataById(rewardDatas, rewardId, out int wheel_index);reward_data_list.Add(reward_data);reward_img.sprite = itemImgs[reward_data.type - 1];reward_img.SetNativeSize();reward_value.text = string.Format("{0}", reward_data.amount);reward_img.gameObject.SetActive(true);reward_value.gameObject.SetActive(true);}}

2.2 操作逻辑

   protected internal override void OnInit(UIView view){base.OnInit(view);btnClose.onClick.AddListener(OnCloseEvent);}protected internal override void OnOpen(object userData){base.OnOpen(userData);eraseMask.Init(EraseComplete);rewardDatas = LuckyManager.Instance.GetDefaultScrathcCardData(itemCount);IsRolling = false;CreateItems();}

三、完整代码链接

https://github.com/lixianjun0903/luckydraw-master.git

关键字:100个 Unity小游戏系列七 -Unity 抽奖游戏专题五 刮刮乐游戏

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: