Losowość: Różnice pomiędzy wersjami

Z wiki.skript.pl
Przejdź do nawigacji Przejdź do wyszukiwania
(Utworzono nową stronę "Skript posiada kilka funkcji / wyrażeń do losowania wartości / pseudo losowych liczb. == Sposoby == # chance of X%: # random number between X and Z # random integer...")
 
(Inny większy przykład:)
Linia 81: Linia 81:
 
* Drewno: '''2%'''
 
* Drewno: '''2%'''
  
<nowiki>~~~~</nowiki>
 
 
[[Kategoria:Skript]]
 
[[Kategoria:Skript]]

Wersja z 21:26, 28 paź 2019

Skript posiada kilka funkcji / wyrażeń do losowania wartości / pseudo losowych liczb.

Sposoby

  1. chance of X%:
  2. random number between X and Z
  3. random integer between X and Z
  4. random element of X-list

Chance of X%:

Jest to najprostsza metoda losowania w skripcie. Działa na zasadzie warunku więc możemy pod nią wstawić else.

Przykład użycia:

command /los [<text>]:
    trigger:
        chance of 25%:
            send "&7Trafione!"
        else:
            send "&7Niestety nie trafiłeś"

Random number between X and Z:

Metoda ta zwraca pseudo zmiennoprzecinkową losową liczbe z przedziału <X, Z>

Przykład użycia:

command /los [<text>]:
    trigger:
        send "&7Pseudo losowa zmiennoprzecinkowa liczba z przedziału 1-100: &6%random number between 1 and 100%"

Random integer between X and Z:

Metoda ta zwraca pseudo całkowitą losową liczbe z przedziału <X, Z>

Przykład użycia:

command /los [<text>]:
    trigger:
        send "&7Pseudo losowa liczba całkowita z przedziału 1-100 &6%random integer between 1 and 100%"

Random element of X-list:

Metoda ta zwraca losowy element z podanej listy elementów

Przykład użycia:

command /los [<text>]:
    trigger:
        set {_rand} to random element of ("Cukierek" and "Psikus")
        send "&7Wylosowales: &6%{_rand}%"

W powyższym przykładzie obie opcje mają po tyle samo szans na wylosowanie (50%)

Inny większy przykład:

on load:
	clear {drop::*}
	add diamond to {drop::*}
	add iron ingot and iron ingot and iron ingot to {drop::*}
	add gold ingot and gold ingot to {drop::*}
	add obsidian and obsidian to {drop::*}
	add emerald to {drop::*}
	add wood to {drop::*}
	loop 40 times:
		add air to {drop::*}
	send "&7Zaladowano drop, posiada on teraz %size of {drop::*}% przedmiotow" to console
on break:
	if event-block is stone or cobblestone:
		set {_item} to random element of {drop::*}
		if {_item} is not air:
			send "&7Wylosowales: &a%{_item}%"
			drop {_item} at event-block

Podane itemy mają następujące szanse:

  • Powietrze: 80%
  • Diament: 2%
  • Żelazo: 6%
  • Złoto: 4%
  • Obsydian: 4%
  • Szmaragd: 2%
  • Drewno: 2%