新增變數運算指令 (3) 新功能意見區



otwl007 BASS創作者兼二代目管理員
 Lv.47:0  Lv.1
私訊  發言  +好友
2015-02-08 20:54:23



  其實有時侯,變數什麼的只有四則運算真的很不方便
  超簡潔的解釋
  所以我希望可以新增以下的指令:
  
  sys(setv: 變數名稱: random)
  當中的random是指從0.00000 至 0.99999 隨機啦
  當然你會問為什麼範圍不是0-99999 something like that
  這是因為這個世界上有一種東西叫做「把變數*100000」!!!!!!!
  而且random乘random可以把範圍變成0 至 9999800001!!!!!!!!!
  
  第二個指令
  sys(setv: 變數名稱: round)
  明顯地就是把「5.7895859345」變成「6」的東西
  如果你問那為什麼不順道弄成可以變成5.8,5.79之類的功能......
  因為你是可以先乘10,round off, 再除10的._____.
  即是5.7895859345 -> 57.895859345 -> 58 -> 5.8
  .______________________.


好文(0)    給我的話   相本化   本主題精華文章    發表留言  

文章連結 1028094618

otwl007 BASS創作者兼二代目管理員
 Lv.47:0  Lv.1
私訊  發言  +好友

2015-02-08 23:55:50

 
 
 
 這兩個的用途還挺廣泛,不過我通常會有以下用途:
 第一個就是給予玩家隨機性的變數,對概率運算有更準確表現,
 有能有多樣性的變化
 例如玩家可獲得150~200個蘋果之類的
 那就可以嘗試sys(setv:apple:random,setv:apple:*50,setv:apple+149.5,setv:apple:round)
 這樣
 
 也可以用作隨機分配舞台出現順序
 例如想令舞台a b c d e能夠進行permutation
 目前的情況就會是要弄120個舞台來分配這五個舞台的出現順序
 但是有了這兩個功能
 就能夠:
 先設變數a=12345
 當中每個位元代表每個舞台
 之後使用隨機變數b進行1~5的隨機
 將得出來的隨機數代表著不同舞台的位序
 (當然要配合各種for while迴圈來阻止重複抽中的可能性的,不過這些迴圈用舞台轉換的特性就ok
 了)
 最後把得出來的結果轉為變數c d e f g例如是4 5 1 3 2這樣
 利用這些變數得出出現順序為舞台d e a c b
 這樣就能大大節省舞台
 p.s 這種做法我用科學型計算機內置的編寫程式嘗試過是可行的,不過有點複雜就是了
 
 
 


給5  10  20  其他bm     好文(0)    意見    回覆文章    分享留言   


felita66 : 聽起來挺好的,尤其支持第二種指令--   2015-02-09 00:38
lazi : 會找時間增加這兩個   2015-02-09 09:18
ca32334790 : 這麼舉例我就懂了  感謝OZㄉㄉ(炸   2015-02-09 12:50

 頁數 : 0 

搜尋本版


 

使用上有疑問嗎? 先問 BASS 專屬搜尋吧 !