最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

jass基礎(chǔ)-回評-隨機(jī)數(shù)問題

2023-08-07 02:33 作者:龐各莊大棚  | 我要投稿

#include "../../jass/BlizzardAPI.j"

library demo initializer test


? ? // 1.數(shù)組定義了 0~10,11個數(shù),用隨機(jī)取其中n個,且n小于11大于0,如何保證每次取的n個數(shù)不同/唯一?,

? ? // ? 是否有辦法在取值后臨時排除被取的數(shù),不加入后續(xù)取值


? ? globals

? ? ? ? // 思路1: 記錄已經(jīng)隨到的數(shù)據(jù),每次隨之前,先檢查是否重復(fù),如果重復(fù)就再隨一次,直到隨到了不重復(fù)的

? ? ? ? // 思路2: 建一個新的數(shù)組,每次隨完,都對新數(shù)組進(jìn)行重新賦值


? ? ? ? integer array baseArr

? ? ? ? integer array ranArr

? ? ? ? integer baseCount = 6

? ? ? ? integer ranCount = 0

? ? endglobals


? ? // function isRepeated takes integer index returns boolean

? ? // ? ? local integer i = 0

? ? // ? ? loop

? ? // ? ? ? ? exitwhen i >= ranCount

? ? // ? ? ? ? if index == ranArr[i] then

? ? // ? ? ? ? ? ? return true

? ? // ? ? ? ? endif

? ? // ? ? ? ? set i = i + 1

? ? // ? ? endloop

? ? // ? ? return false

? ? // endfunction


? ? // function ranInt takes nothing returns integer

? ? // ? ? local integer index = GetRandomInt(0, baseCount - 1)

? ? // ? ? local integer result

? ? // ? ? if ranCount >= baseCount then

? ? // ? ? ? ? return - 999

? ? // ? ? endif

? ? // ? ? if isRepeated(index) then

? ? // ? ? ? ? set result = ranInt()

? ? // ? ? else

? ? // ? ? ? ? set ranArr[ranCount] = index

? ? // ? ? ? ? set ranCount = ranCount + 1

? ? // ? ? ? ? set result = baseArr[index]

? ? // ? ? endif

? ? // ? ? return result

? ? // endfunction

? ? function ranInt takes nothing returns integer

? ? ? ? local integer index = GetRandomInt(0, ranCount - 1)

? ? ? ? local integer result

? ? ? ? if ranCount == 0 then

? ? ? ? ? ? return - 999

? ? ? ? endif

? ? ? ? set result = ranArr[index]

? ? ? ? if index != ranCount - 1 then

? ? ? ? ? ? set ranArr[index] = ranArr[ranCount - 1]

? ? ? ? endif

? ? ? ? set ranCount = ranCount - 1

? ? ? ? return result

? ? endfunction


? ? function doSomething takes nothing returns nothing

? ? ? ? local integer i = ranInt()

? ? ? ? if i == - 999 then

? ? ? ? ? ? call BJDebugMsg("沒有可用的數(shù)字")

? ? ? ? else

? ? ? ? ? ? call BJDebugMsg(I2S(i))

? ? ? ? endif

? ? endfunction


? ? function initRanArr takes nothing returns nothing

? ? ? ? local integer i = 0

? ? ? ? loop

? ? ? ? ? ? exitwhen i >= baseCount

? ? ? ? ? ? set ranArr[i] = baseArr[i]

? ? ? ? ? ? set i = i + 1

? ? ? ? endloop

? ? endfunction


? ? function initBaseArr takes nothing returns nothing

? ? ? ? set baseArr[0] = 1

? ? ? ? set baseArr[1] = 165

? ? ? ? set baseArr[2] = 21

? ? ? ? set baseArr[3] = 56

? ? ? ? set baseArr[4] = 8

? ? ? ? set baseArr[5] = 17

? ? ? ? call initRanArr()

? ? ? ? set ranCount = baseCount

? ? endfunction


? ? function triggerInit takes nothing returns nothing

? ? ? ? local trigger t = CreateTrigger()

? ? ? ? call TriggerRegisterPlayerChatEvent(t, Player(0), "1", true)

? ? ? ? call TriggerAddAction(t, function doSomething)

? ? ? ? set t = null

? ? endfunction


? ? function gameInit takes nothing returns nothing

? ? ? ? local unit u = CreateUnit(Player(0), 'hfoo', - 100, - 100, 0)

? ? ? ? call FogEnable(false)

? ? ? ? call FogMaskEnable(false)

? ? endfunction


? ? function test takes nothing returns nothing

? ? ? ? call gameInit()

? ? ? ? call triggerInit()

? ? ? ? call initBaseArr()

? ? endfunction

endlibrary

jass基礎(chǔ)-回評-隨機(jī)數(shù)問題的評論 (共 條)

分享到微博請遵守國家法律
漳浦县| 铜鼓县| 巨野县| 尉犁县| 满城县| 黎川县| 紫阳县| 大连市| 北海市| 沐川县| 济宁市| 青河县| 岳阳市| 博野县| 叙永县| 张家界市| 岱山县| 棋牌| 双桥区| 承德县| 新丰县| 荆门市| 井陉县| 泽州县| 宜城市| 青海省| 崇文区| 长顺县| 扶沟县| 龙游县| 新田县| 宽甸| 阳曲县| 巨鹿县| 老河口市| 旌德县| 长白| 闽清县| 大洼县| 伽师县| 建德市|