Skocz do zawartości

[Dyskusja] Propozycje


Rekomendowane odpowiedzi

Pewnie by się dało o wiele więcej, ale czasem warto odpocząć, żeby nie tracić tego czegoś, co pcha do tego, by coś dopisać :p

Mogę zapewnić, że FunnyGuilds* będzie miało pełne wsparcie Skript :)!

____________________________________

* - Plugin na gildie jak łatwo się domyślić, nie robić spamu  :D

 

#// Wykarmione z Panda Phone

Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-9021
Udostępnij na innych stronach

@Dziki

Ja tez robie skrypt na "gildie" (taki mini) o nazwie "EasyGuilds" :D

@top

A moze (jesli sie da) dodaj cos takiego jak nowe id dla itemow czyli jak bd sie je craftowalo to daje nowe id a wtedy moze by sie udalo dac z Resource Packa te txt ? ^^

Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-9121
Udostępnij na innych stronach

Gość DonFallingCookie

Tellraw - wyświetla wiadomość na czacie, gdy na nią najedziemy kursorem to wyświetla jeszcze jedną wiadomość, a jak klikniemy, to wykonuje wydarzenie ;P

tellrawSend %id% %tekst% %tekst po najechaniu%
tellrawClick %id% %wydarzenie po kliknieciu%
Edytowane przez DonFallingCookie
Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-9369
Udostępnij na innych stronach

Villager trade - nie wiem czy już to było ale mógłbyś to dodać a ładowanie tak jak inventory ;p

Mała ściąga jak byś nie widział jak zrobić ;p http://dev.bukkit.org/bukkit-plugins/villager-trade-api/ ;D

 

Dołączona grafika

Jest w random SK chciałem zaproponować. IMO na to powstałby kolejny complex :P

 

Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-9436
Udostępnij na innych stronach

Mógłbyś dodać to, co napisał slupik. Plus:

set line %number% of "sciezka do pliku" to "tekst"remove "tekst" from line %number% in "sciezka do pliku"

event

on chat message click:

wywołuje się, gdy gracz kliknie na wiadomość na czacie. Sądzę, że skoro po kliknięciu w linka jest to możliwe, to po kliknięciu w wiadomość też :D

Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-9600
Udostępnij na innych stronach

Dzikiego przemęczacie, pewnie nie nadąża, pozapominał to i owo, więc ja z racji posiadania czasu przejrzałem mu ładnie temat i ew. dopisałem swoje propozycje 

 

 

#Wymuszanie respawnu

 

force %player%'s respawn

 

#Pokazywanie animacji na blokach/graczach
 
show %animation% at %block%/%player%
 
animacje:
-bloki:
block break%number% = Poziom zniszczenia bloku
block open/close = w wypadku skrzyń :F
 
-gracze: 
player punch =  gracz uderza
player wakeup = gracz widzi ściemnienie ekranu jak przy spaniu i "wstaje" po chwili
player take damage = gracz otrzymuje obrażenia
critical = gracz otrzymuje kryt. obr.
crouch = gracz idzie kucając
uncrouch = gracz idzie normalnie
 
 
#Dodanie fajerwerków. Myślę, że możnaby z tego complex zrobić 
 
new Firework "nazwa"
* - "nazwa".Firework
 
*.setShape{kształt};
*.setAdditionalEffect{efekt dodatkowy};
*.setSize{wielkość};
*.setHeight{wysokosc};
*.setColor{kolor};
*.shot{location};
 
kształty: Ball, Star, Creeper, Burst
Dodatkowe efekty: Twinkle, Trail
rozmiary: small, large
kolory: 15 kolorów tak jak u wełny
 
#Zmiana ikony serwera(np. gdy mamy kilka obrazków w folderze)
 
set server icon to "path"
 
#Obsługa rang pex i innych pluginów tego typu
 
wyrażenie: %player%'s rank/rank of %player%
 
#Zapętlanie slotów w ekwipunku
 
loop all slots in %inventory%
 
loop-slot is 1/2/3/4/itd.-crafting/inventory slot of %player%
 
loop-slot is 1/2/3/4/itd.-inventory slot of %block%
 
loop-slot is helmet/chestplate/leggings/boots slot of %living entities%
 
loop-slot is result/fuel/ore slot of %block% -> W tym wypadku działa tylko z piecem
 
loop-slot is 1/2/3/4/itd.-crafing slot of %block% -> W tym wypadku działa tylko z Work Benchem
 
loop-slot is result slot of %block% -> jw.
 
loop-slot is player's held item slot(jest wyrażenie w WS więc czemuby nie zapętlić )
 
item in loop-slot
 
#Regiony! 
 
loop all regions
 
loop-region is "region"
 
- Zmiana wyskosci:
[Object].setY{najnizsza, najwyzsza};
 
np., gdy chcemy zmienić wysokość, nie zmieniając podłoża
 
set {_Yc} to "rg".Region.getLowerY{};
set {_Ytc} to "rg".Region.getUpperY{};
"rg".Region.setY{{_Yc}, {_Ytc}+50};
 
#Wysokosc :c
 
set {_high} to biggest y-location at %location%
 
np. koordynaty stone'a to x: 20, y:10, z:15
 
biggest y-location -> Najwyżej położony solidny blok. Dajmy np. na y=75
 
więc biggest y-location wynosi ten blok+1 czyli w rezultacie wyjdzie nam coś takiego:
 
set {_high} to biggest y-location at %location%
send "%{_high}%" to player = send "x: 20, y: 76, z:15" to player
 
if you know, what i mean 
 
#Literki!
 
set {zmienna} to random letter between a and f -> to by wymagało wprowadzenia jakiegoś alfabetu do skryptu
 
#Więcej:
 
pet -> Oswojony wilk/ocelot/koń
 
dog/cat/tamed horse
 
loop all pets
loop-pet is dog
loop-pet is cat
loop-pet is tamed horse
 
 
tame %living entity% for the %player/living entity% -> proponowałem, ale lepiej żebyś miał tutaj czarno na białym. Do tego kiedyś widziałem plugin, gdzie zombie mogły mieć oswojonego psa, toteż raczej da się to w skripcie zrobić 
 
make %living entity% follow %living entity/player% -> jw.
 
make %living entity% guard %living entity% -> jak w pluginie pet Manager. służyłoby do czegoś a'la oswajanie zombiego(nie wiem na ile procent jest to możliwe, ale jest możliwe zrobienie, aby zombie podążał za tobą i bronił cię :p
 
on ender dragon/creeper/wither/ghast grief -> Gdy owe jednostki ingerują w teren.
 
#gfs
make %living entities% leash %living entities% -> Efekt z Sk+
 
#I niech tą linę uznaje za spawned entity 
 
#dodanie 'tick' do jednostek czasu
 
set {_tick} to tick
 
#obsługa wiadomości JSON
 
sendraw "{""text"":"""",""extra"":[{""text"":""Brak"",""color"":""red"",""bold"":""true"",""hoverEvent"":{""action"":""show_text"",""value"":""&cBrak Informacji""}}]}"
 
#albo poprostu wiadomość, na którą jak się najedzie lub po kliknięciu na nią wykonująca czynność
 
on message click/aim
 
#coś takiego 
 
#Ten E-mailing dam ci w jednym miejscu bo kiedyś chciałeś myśleć coś o tym 
 
send [e-]mail from %string% of password %string% to [e-]mail %string% with %string%
 
send mail from "[email protected]" of password "mleko" to mail "[email protected]" with "Dodaj to!"
 
#Jak teraz dojdą hologramy w MC, to może:
 
new Holo "WelcomeMessage"
 
* - "WelcomeMessage".Holo
 
*.setText{linia, tekst};
*.setLocation{lokacja}
*.display{};
 
#Sprawdzanie, czy gracz walczy
 
player is[n't/ not] in combat
 
#Dodanie więcej opcji do GUI
Typ inventory: chest/enchanting table/crafting/furnace/anvil/brewing stand/etc.
 
#Tablista -> Gdy gracz sprawdzi tablistę(Kliknie TAB :f)
 
on tablist open
 
#Krytyki
 
on critical damage
 
on damage:
    damage was critical:
        set critical multiplier to %percent%(czyli o ile % krytyk zwiększa DMG)
 
#Spawnowanie steve'a 
 
spawn steve at %location%
 
#Do pętli
 
loop all solid blocks [in region/world ...]
loop all non-solid blocks [in region/world]
 
#Klikanie klawiszy
on %klawisz% click
 
on x click
on enter click
on esc click
 
#Bundgeecoord
 
#Każda pojedyncza litera wiadomości uznawana za coś innego
 
on chat:
    message contains "hipopotamica":
        replace all "hipopotamica" with "%random color%%every single char of containment%" in message
 
#Gdy coś jest zakładane na gracza
 
on equip of %item type%:
    event-entity is player:
 
Przecież nie tylko gracz może coś założyć -> Pomęczymy cię xD
 
#Zapętlanie drzew
 
loop all trees:
    loop-tree is oak:
        stop
 
Zanim napiszesz, że się nie da, to wiedz, że jest w ameryce taki serwer, gdzie mają swój dodatek do zapętlania struktur ;_; Poprostu wklepujesz 128 wzorców na każdy gatunek drzewa i masz!
 
#Wysyłanie do gracza resource packa(wiem, że musi akceptować)
 
send ([resource] pack/rp) from "url" to %player%
 
lub
 
send ([resource] pack/rp) from "path" to %player%
 
#Zwracanie(jeśli mozliwe) nazwy resource packa, którego używa gracz
 
set {_rp} to ([resource] pack/rp) used by %player%
 
#Cos jak clear drops do dropu z bloków
 
#Więcej efektów wizualnych(cząsteczki deszczu, śniegu, itd.)
 
#Coś, gdy gracz dotknie bloku
 
on touch of %block% 
 
Gdy gracz przejdzie tuż obok bloku, wręcz, gdy się o niego 'otrze' Coś jak on walking on, tylko będzie to dotyczyło np. bloku nad graczem, gdy podskoczy w tunelu o wysokości dwóch bloków, czy bloku z boku, gdy usilnie będzie klikał strzałkę w prawo, mimo tego, że nie ma miejsca xD
 
#Gdy gracz zacznie chodzić, nie gdy poruszy kursorem myszki 
 
on move on any block
 
#full month/day/hour/minute/second
 
Pokażę ci datę, która jest wyrażeniem tych wyrażeń(XD)
:Format daty -> dd.mm.yyyy hh:mm:ss:msms
 
full year 01.01.xxxx 00:00:00:00
full month 01.xx.xxxx 00:00:00:00
full day xx.xx.xxxx 00:00:00:00
full hour xx.xx.xxxx xx:00:00:00
full minute xx.xx.xxxx xx:xx:00:00
full second xx.xx.xxxx xx:xx:xx:00
 
#Jeśli nie ma(a pisałeś, że chyba nie będzie)
 
Zmiana rozmiaru slime'a/magmacube'a///wieku jednostki
 
set targeted entity's size/age to ...
 
#Zapisywanie ekwipunku gracza
 
set {zmienna} to inventory of player
 
restore player's inventory from {zmienna}
 
#Ekwipunki jednostek(Mowa o Villagerze) -> Jako complex?
 
new Trade "nazwa"
 
* - "nazwa".Trade
 
*.clearOffers{};
*.setOffers{number} -> Villager ma określoną ilość ofert(Aczkolwiek ich ilość może rosnąc w miarę handlu)
*.clearOffer{number} -> Usuwa okreslona oferte u villagera
*.addOffer{%itemstack% [and %itemstack%], %itemstack%, number} -> Nowa oferta(Przed przecinkiem 'waluta', po przecinku 'towar', po drugim przecinku max. ilość użyć
*.lockOffers{number} -> Ile ofert maks. może mieć Villager :p(Po przekroczeniu tej ilosci zadna nowa sie nie pojawi
 
Trade.getOffer{}; -> Pobiera ofertę z poniższych eventów
Trade.getPayment{}; -> Pobiera 'walutę' z poniższych eventów
Trade.getCommodity{}; -> Pobiera 'towar' z poniższych eventów
Trade.getUses{}; -> Pobiera informację ile razy została użyta oferta
 
eventy:
on offer open -> Gdy pojawi sie u villagera nowa oferta
on offer cancel -> Gdy villager zamknie swoją ofertę
on trade -> Gdy gracz handluje z villagerem
 
Na początku nie widziałem tu kompleksu, ale teraz jest tu tyle tego 
 
#Czy gracz pływa? 
 
%livingentities% is swimming
 
#Strzelanie/Popychanie w danym kierunku(do jakiegoś punktu)/w losowym kierunku
 
push/shoot %entity% towards %location%
 
push/shoot %entity% in random direction
 
#Dodawanie receptur reforge'u/enchantu/brewingu/meltingu
 
on reforge/on brew/on melt
 
+ = Reforge/Enchant/Brew/Melt
 
new + "nazwa"
 
* - "nazwa".Reforge
 
*.setRepaired{stick named "&cZlamany patyk"}; -> Przedmiot, który 'naprawiamy'
*.setMaterial{oak log}; -> Materiał, którym naprawiamy
*.setResult{stick named "&aSklejony patyk"}; -> Zmiana wyniku naprawy 
*.setLevel{5}; -> Zmiana wymaganych poziomów
 
* - "nazwa".Enchant
 
*.setEnchanted{stick named "&cNiezaczarowany patyk"}; -> Przedmiot, który chcemy zenchantować 
*.setPayment{gold ingot}; -> Zmienia item wymagany do zenchantowania(W nowym enchantingu )
*.setLevel{1, 10}; -> Zmienia poziom wymagany na pierwszy enchant na liście
*.setLevel{2, 30}; -> Zmienia poziom wymagany na drugi enchant na liście
*.setLevel{3, 50}; -> Zmienia poziom wymagany na trzeci enchant na liście
*.1.setResult{stick of Sharpness 2}; -> Nie muszę chyba tłumaczyć, że wynik jest zależny od wybranego enchantu
*.2.setResult{stick of Sharpness 5}; -> Nie muszę chyba tłumaczyć, że wynik jest zależny od wybranego enchantu
*.3.setResult{stick of Fire Aspect 2, Sharpness 5}; -> Nie muszę chyba tłumaczyć, że wynik jest zależny od wybranego enchantu
 
* - "nazwa".Brew
 
*.setPotion{water bottle};
*.setIngredient{apple};
*.setResult{water bottle named "&4Apple &aJuice"};
 
* - "nazwa".Melt
 
*.setIngredient{water bucket};
Albo:
  *.addFuel{lava bucket};
  *.addFuel{coal};
  *.addFuel{charcoal};
Albo:
*.setFuel{lava bucket, coal, charcoal
*.setResult{water bucket of fire aspect 2 named "&bWrzatek"};
 
#vanish&disguise/ghost
 
vanish %players% for %players% -> W essentials masz gotowca xD
 
disguise %player% as %entity%/%block% -> Zobacz jak to figuruje w disguise crafcie i w skript+ 
 
ghost %player% -> Taki efekt 'ducha' = gracz jest przeźroczysty, ale widzialny
 
#Czachy
 
set block at %location% to %entity% skull
 
#Sprawdzanie, czy komenda istnieje
 
command is unknown
 
#Efekty cząsteczkowe takie same jak w SkriptPlus
 
#Drop itemków, których nie da się podnieść i wyświetla się ich nazwa 
 
false drop{ilosc %itemstack% named "nazwa" with lore "opis", czas istnienia[w sekundach]};
 
#Pobieranie wszystkich lokacji z pewnego zakresu
 
blocks between location (x, y, z) and (z, y, z)
[Dla zainteresowanych dodam takie coś]
Z każdego regionu możecie łatwo pobrać środek(mając koordynaty) i rogi(tak samo) a nawet więcej(Środki odcinków poprowadzonych od wierzchołka do wierzchołka[NIE PRZEKĄTNYCH!]) :p Możecie stworzyć dodatkowy kwadrat i z niego pobierać.
 
Polecenia, które są do tego potrzebne:
 
 
* - "nazwa".Region
 
set {_X1} to *.getUpperX{};
set {_Z1} to *.getLowerZ{};
 
set {_X2} to *.getLowerX{};
set {_Z2} to *.getUpperZ{};
 
Z tych dwóch możecie m. in. wyznaczyć sobie 4 regiony(od każdego wierzchołka w poziomie), co pozwoli na pobranie aż 5 punktów w kilku poleceniach 
 
Centrum kwadratu dwóch lokacji:
 
"Centrum".Region.selectLL{Pierwsza lokacja, Druga Lokacja};
set {_centre} to "Centrum".Region.getCentre{};
"Centrum".Region.delete{};
 
//Nie mam pewności czy to działa, ale nie widzę powodu, czemu nie możnabyłoby pobierać środka z regionu wyznaczonego dwoma lokacjami
 
#Complex(już kolejny) -> Książki!
 
 
new Book "nazwa"
 
* - "nazwa".Book
 
*.setTitle{Tytuł};
*.setAuthor{Autor};
*.setLine{Linia, tekst};
*.setLore{Opis}
*.give{player} -> Daje książkę o podanej nazwie F:
 
Jeszcze:
on book read
on page change
 
change page of event-book
 
#Zawartość[bardzo przydatne, w auto-updaterach do plików z configiem, żeby nie zmieniać istniejącego configu ]
 
signed containment
containment of file/"file"'s containment
 
set {_text} to result of connect to "url"
set {_containment} to containment of file "sciezka"/file "sciezka"'s containment
 
"%{_text}%" contains "%{_containment}%":
    replace all "%signed containment%" in "%{_text}%" with ""
    set {new::*} to "%{_text}%" split at ","
    set {_times} to size of {new::*}
    loop {_times} times:
        wf "%{new::%loop-number%}%" "sciezka"
 
Plik na stronie:
gra: 'false'
tak: 'true',
czemu_nie: 'bo tak',
 
Plik ze sciezki:
gra: 'false'
 
Co zostanie dodane:
 
tak: 'true'
czemu_nie: 'bo tak'
 
#Ingerencja w pliki YAML(IMO można z nich zrobić complex, ale już są odosobnione...)
 
set %number% line of "plik" to "tekst"
remove %number% line of "plik"
 
%number% line of "plik" is [not] exists
%number% line of "plik" is "tekst"
%number% line of "plik" contains "tekst"
    replace all "tekst" in %number% line of "plik" with "inny tekst"
 
#Fałszowanie enchantu -> Nakładanie tego świecenia dla przedmiotu
 
false enchant %item type%
 
#CYFERKI!!!!!
 
%number% is prime -> Sprawdza, czy liczba jest pierwsza
%number% is divisible by %number% -> Sprawdza, czy liczba jest podzielna przez inną liczbę
%number% is[n't/not] even(?) -> Sprawdza, czy liczba jest parzysta
Wyrażenie; %numbers sorted from highest to lowest/lowest to highest% -> Liczby posortowane od najmniejszej, do największej, od największej, do najmniejszej
 
#Ew. event
on item despawn

Minister ds. propozycji przesortował wszystko xD
Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-9798
Udostępnij na innych stronach

Na razie pracuję nad automatycznie generowaną dokumentacją. WildSkript sam napisz tą stronkę na www xD 

 

WorldGuard raczej nie zostanie dodany, bo nie dość, że ws ma regiony, to sam Skript również bawi się wg. W ws można dodawać coraz to nowe rzeczy do regionów. Na 1 planie jest pobieranie bloków z danego regionu. 

Odnośnik do komentarza
https://skript.pl/temat/524-dyskusja-propozycje/#findComment-10133
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...