一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C# - Unity實現跑馬燈抽獎效果

Unity實現跑馬燈抽獎效果

2022-03-10 13:53Sweet_james C#

這篇文章主要為大家詳細介紹了Unity實現跑馬燈抽獎效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

Unity 跑馬燈抽獎效果實現代碼,供大家參考,具體內容如下

這邊用到插件是NGUI+Dotween,思路簡單說下:先排版,通過移動圖片蒙版來實現效果。
下面是排版和文件目錄。

Unity實現跑馬燈抽獎效果

代碼部分是通過余數去確認停的位置,boxlist通過unity拖拉加入數據,chooseBoxList直接通過余數判斷添加。
代碼量很少,稍微看下就明白了。

直接上代碼了:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
using System;
using System.Collections;
using System.Collections.Generic;
using DG.Tweening;
using UnityEngine;
 
public class goLuckyDraw : MonoBehaviour
{
  private int index = 23;
  //index%12 來判斷停在哪個位置
 // Use this for initialization
  private UISprite prize1,prize2,prize3,prize4,prize5,prize6,prize7,prize8,prize9,prize10,prize11,prize12, prize13, prize14;
  private UISprite transparentBox;
  public List<Transform> boxList = new List<Transform>();
  public List<Transform> chooseBoxList = new List<Transform>();
  void Start () {
    prize1 = GameObject.Find("Lucky/Bg/prize1").GetComponent<UISprite>();
    prize2 = GameObject.Find("Lucky/Bg/prize2").GetComponent<UISprite>();
    prize3 = GameObject.Find("Lucky/Bg/prize3").GetComponent<UISprite>();
    prize4 = GameObject.Find("Lucky/Bg/prize4").GetComponent<UISprite>();
    prize5 = GameObject.Find("Lucky/Bg/prize5").GetComponent<UISprite>();
    prize6 = GameObject.Find("Lucky/Bg/prize6").GetComponent<UISprite>();
    prize7 = GameObject.Find("Lucky/Bg/prize7").GetComponent<UISprite>();
    prize8 = GameObject.Find("Lucky/Bg/prize8").GetComponent<UISprite>();
    prize9 = GameObject.Find("Lucky/Bg/prize9").GetComponent<UISprite>();
    prize10 = GameObject.Find("Lucky/Bg/prize10").GetComponent<UISprite>();
    prize11 = GameObject.Find("Lucky/Bg/prize11").GetComponent<UISprite>();
    prize12 = GameObject.Find("Lucky/Bg/prize12").GetComponent<UISprite>();
    prize13 = GameObject.Find("Lucky/Bg/prize13").GetComponent<UISprite>();
    prize14 = GameObject.Find("Lucky/Bg/prize14").GetComponent<UISprite>();
    transparentBox = GameObject.Find("Bg/Transparentbox").GetComponent<UISprite>();
    transparentBox.gameObject.SetActive(false);
    //獲取需要監聽的按鈕對象
    GameObject button = GameObject.Find("Lucky/Bg/start");
    //設置這個按鈕的監聽,指向本類的ButtonClick方法中。
    UIEventListener.Get(button).onClick = StartLuckyDraw;
 
    chooseIndex(index);
 
    // StartLuckyDraw();
   
  }
 
  IEnumerator Move( )
  {
    float time;
    
    for (int i = 0; i < boxList.Count; i++)
    {
      time = Mathf.Lerp(0.04f, 0.05f, 0.05f*i);
      Debug.Log("---time----="+time);
      transparentBox.transform.DOLocalMove(boxList[i].localPosition, time);
      yield return new WaitForSeconds(0.05f);
    }
    for (int i = 0; i < boxList.Count; i++)
    {
      time = Mathf.Lerp(0.05f, 0.065f, 0.05f * i);
      Debug.Log("---time3----=" + time);
      transparentBox.transform.DOLocalMove(boxList[i].localPosition, time);
      yield return new WaitForSeconds(0.05f);
    }
    for (int i = 0; i < boxList.Count; i++)
    {
      time = Mathf.Lerp(0.065f, 0.08f, 0.05f * i);
      Debug.Log("---time2----=" + time);
      transparentBox.transform.DOLocalMove(boxList[i].localPosition, time);
      yield return new WaitForSeconds(0.05f);
    }
    for (int i = 0; i < chooseBoxList.Count; i++)
    {
      transparentBox.transform.DOLocalMove(chooseBoxList[i].localPosition,0.1f);
      yield return new WaitForSeconds(0.1f);
    }
    yield return new WaitForSeconds(2f);
    transparentBox.gameObject.SetActive(false);
  }
 
  private void chooseIndex(int index)
  {
    chooseBoxList.Clear();
    for (int i = 0; i < index % 12; i++)
    {
      chooseBoxList.Add(boxList[i]);
    }
  }
 
  private void StartLuckyDraw(GameObject go)
  {
    transparentBox.gameObject.SetActive(true);
    StartCoroutine(Move());
  }
 
  void Update () {
 
 }
}

代碼很糙,大家自己完善吧!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/Leonardo_zhang/article/details/84954658

延伸 · 閱讀

精彩推薦
  • C#深入解析C#中的交錯數組與隱式類型的數組

    深入解析C#中的交錯數組與隱式類型的數組

    這篇文章主要介紹了深入解析C#中的交錯數組與隱式類型的數組,隱式類型的數組通常與匿名類型以及對象初始值設定項和集合初始值設定項一起使用,需要的...

    C#教程網6172021-11-09
  • C#WPF 自定義雷達圖開發實例教程

    WPF 自定義雷達圖開發實例教程

    這篇文章主要介紹了WPF 自定義雷達圖開發實例教程,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下...

    WinterFish13112021-12-06
  • C#C#通過KD樹進行距離最近點的查找

    C#通過KD樹進行距離最近點的查找

    這篇文章主要為大家詳細介紹了C#通過KD樹進行距離最近點的查找,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    帆帆帆6112022-01-22
  • C#C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    這篇文章主要介紹了C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題,簡單描述了訪問者模式的定義并結合具體實例形式分析了C#使用訪問者模式解決長...

    GhostRider9502022-01-21
  • C#C#實現XML文件讀取

    C#實現XML文件讀取

    這篇文章主要為大家詳細介紹了C#實現XML文件讀取的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Just_for_Myself6702022-02-22
  • C#Unity3D實現虛擬按鈕控制人物移動效果

    Unity3D實現虛擬按鈕控制人物移動效果

    這篇文章主要為大家詳細介紹了Unity3D實現虛擬按鈕控制人物移動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一...

    shenqingyu060520232410972022-03-11
  • C#C#裁剪,縮放,清晰度,水印處理操作示例

    C#裁剪,縮放,清晰度,水印處理操作示例

    這篇文章主要為大家詳細介紹了C#裁剪,縮放,清晰度,水印處理操作示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    吳 劍8332021-12-08
  • C#C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    這篇文章主要介紹了C# 實現對PPT文檔加密、解密及重置密碼的操作方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下...

    E-iceblue5012022-02-12
主站蜘蛛池模板: 国产一卡二卡3卡4卡四卡在线视频 | 国产亚洲福利一区二区免费看 | ady成人映画网站官网 | 国产免费资源高清小视频在线观看 | 国产麻豆91网在线看 | 国产在线精品99一卡2卡 | 插入逼 | 天天操天天做 | 秋葵丝瓜茄子草莓榴莲樱桃 | 新影音先锋男人色资源网 | 女仆色网址 | 拍拍叫痛的无挡视频免费 | 好姑娘在线完整版视频 | 91香蕉视频导航 | 99久久精品国内 | 国产精品九九免费视频 | 特级老女人淫片高清视频 | 午夜久久影院 | 91香蕉视频导航 | 国产一区二区三区四卡 | 美女的隐私脱裤子无遮挡 | 亚洲精品www久久久久久久软件 | 高清一区高清二区视频 | 32d乳白色的奶罩未删除 | 波多野结衣xxxxx在线播放 | 干露露视频 性感写真 | 天天久久影视色香综合网 | 8mav福利视频| 成人私人影院在线观看网址 | blackedhd 18sex| a级黄色视屏 | 好爽轻点太大了太深了 | 成人影院免费在线观看 | 国产在线伊人 | brazzersxxx欧美 | 毛片视频网站在线观看 | 国产情侣啪啪 | 暖暖 免费 高清 日本 中文 | 99久久精品6在线播放 | 国产白白视频在线观看2 | 美女伊人网 |