Skocz do zawartości
  • 0

Włączanie redstonowych lamp


Parczik
 Udostępnij

Pytanie

10 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
5 minut temu, Parczik napisał:

Siema potrzebuję skryptu na włączanie się redstonowych lamp o 7:30AM w minecrafcie.

Gdy jest godzina 7:30AM (19:30) lampy się włączają, a o 5:20 wyłączają

on place of redstone lamp:
	if {ustawianie::lamp::%player%} is true:
		add location of event-block to {lampy::redstone::nocne::*}
		
on break of redstone lamp:
	if {lampy::redstone::nocne::*} contains location of event-block:
		remove location of event-block from {lampy::redstone::nocne::*}
	
at 19:30:
	loop {lampy::redstone::nocne::*}:
		set block at loop-value to lit redstone lamp
		
at 5:20:
	loop {lampy::redstone::nocne::*}:
		set block at loop-value to redstone lamp
		
command /stawianielamp [<text>]:
	trigger:
		if player is not op:
			stop
		if {ustawianie::lamp::%player%} is not set:
			set {ustawianie::lamp::%player%} to false
		if arg 1 is "on" or "true":
			set {ustawianie::lamp::%player%} to true
			send "&aTeraz bedziesz ustawial lampy!" to player
		if arg 1 is "off" or "false":
			set {ustawianie::lamp::%player%} to false
			send "&cJuz nie bedziesz ustawial lamp!" to player

Sprawdź czy zadziała.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
6 minut temu, Kormic napisał:
on place of redstone lamp:
	if {ustawianie::lamp::%player%} is true:
		add location of event-block to {lampy::redstone::nocne::*}
		
on break of redstone lamp:
	if {lampy::redstone::nocne::*} contains location of event-block:
		remove location of event-block from {lampy::redstone::nocne::*}
	
at 19:30:
	loop {lampy::redstone::nocne::*}:
		set block at loop-value to lit redstone lamp
		
at 5:20:
	loop {lampy::redstone::nocne::*}:
		set block at loop-value to redstone lamp
		
command /stawianielamp [<text>]:
	trigger:
		if player is not op:
			stop
		if {ustawianie::lamp::%player%} is not set:
			set {ustawianie::lamp::%player%} to false
		if arg 1 is "on" or "true":
			set {ustawianie::lamp::%player%} to true
			send "&aTeraz bedziesz ustawial lampy!" to player
		if arg 1 is "off" or "false":
			set {ustawianie::lamp::%player%} to false
			send "&cJuz nie bedziesz ustawial lamp!" to player

Sprawdź czy zadziała.

nie ma errorów ani nic, wszystko działa ale i tak lampy się nie zapalają o 19:30, a gdy ustawię włączoną ręcznie to nie zamienia się w zwykłą :(

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 minutę temu, Parczik napisał:

nie ma errorów ani nic, wszystko działa ale i tak lampy się nie zapalają o 19:30, a gdy ustawię włączoną ręcznie to nie zamienia się w zwykłą :(

Zapomniałem dać parę słów wyjaśnienia. Jeśli myślałeś, że jest sposób, aby wykryć wszystkie redstone lampy, to niestety, ale to wymagałoby "skanu" mapy, a to by najprawdopodobniej spowodowało crash serwera. Dlatego musisz użyć komendy w tym skrypcie, aby włączyć sobie stawianie lamp nocnych, te, które były wcześniej postawione, nie będą zmieniane przez skrypt. Więc po prostu musisz znaleźć wszystkie lampy, włączyć sobie komendą opcję stawiania lamp nocnych i zamieniasz wszystkie stare na nowe.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, Kormic napisał:

Zapomniałem dać parę słów wyjaśnienia. Jeśli myślałeś, że jest sposób, aby wykryć wszystkie redstone lampy, to niestety, ale to wymagałoby "skanu" mapy, a to by najprawdopodobniej spowodowało crash serwera. Dlatego musisz użyć komendy w tym skrypcie, aby włączyć sobie stawianie lamp nocnych, te, które były wcześniej postawione, nie będą zmieniane przez skrypt. Więc po prostu musisz znaleźć wszystkie lampy, włączyć sobie komendą opcję stawiania lamp nocnych i zamieniasz wszystkie stare na nowe.

tylko, że nie stawiałem wcześniej żadnych lamp, a te postawione po wpisaniu komendy i tak nie świecą

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
on place of redstone lamp:
	if {ustawianielamp::%player%} is true:
		add location of event-block to {lampy::redstone::nocne::*}
		
on break of redstone lamp:
	if {lampy::redstone::nocne::*} contains location of event-block:
		remove location of event-block from {lampy::redstone::nocne::*}
	
at 19:30:
	loop {lampy::redstone::nocne::*}:
		activate block at loop-value
		
at 5:20:
	loop {lampy::redstone::nocne::*}:
		deactivate block at loop-value
		
command /stawianielamp [<text>]:
	permission: skript.stawianielamp
	trigger:
		if {ustawianielamp::%player%} is not set:
			set {ustawianielamp::%player%} to true
			send "&aTeraz bedziesz ustawial lampy!" to player\
		else:
			clear {ustawianielamp::%player%}
			send "&cJuz nie bedziesz ustawial lamp!" to player

 

Edytowane przez Helios1993
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
15 minut temu, Parczik napisał:

tylko, że nie stawiałem wcześniej żadnych lamp, a te postawione po wpisaniu komendy i tak nie świecą

on place of redstone lamp:
	if {ustawianie::lamp::%player%} is true:
		add location of event-block to {lampy::redstone::nocne::*}
		send "&aUstawiles lampe!" to player
		
on break of redstone lamp:
	if {lampy::redstone::nocne::*} contains location of event-block:
		if {ustawianie::lamp::%player%} is true:
			remove location of event-block from {lampy::redstone::nocne::*}
			send "&aUsunales lampe!" to player
		else:
			cancel event
			send "&cMusisz wlaczyc tryb stawiania lamp!" to player
	
at 19:30:
	loop {lampy::redstone::nocne::*}:
		set block at location at loop-value to lit redstone lamp
		
at 5:20:
	loop {lampy::redstone::nocne::*}:
		set block at location at loop-value to unlit redstone lamp
		
command /stawianielamp [<text>]:
	trigger:
		if player is not op:
			stop
		if {ustawianie::lamp::%player%} is not set:
			set {ustawianie::lamp::%player%} to false
		if arg 1 is "on" or "true":
			set {ustawianie::lamp::%player%} to true
			send "&aTeraz bedziesz ustawial lampy!" to player
		if arg 1 is "off" or "false":
			set {ustawianie::lamp::%player%} to false
			send "&cJuz nie bedziesz ustawial lamp!" to player

Sprawdź jeszcze ewentualnie to.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
4 godziny temu, Kormic napisał:
on place of redstone lamp:
	if {ustawianie::lamp::%player%} is true:
		add location of event-block to {lampy::redstone::nocne::*}
		send "&aUstawiles lampe!" to player
		
on break of redstone lamp:
	if {lampy::redstone::nocne::*} contains location of event-block:
		if {ustawianie::lamp::%player%} is true:
			remove location of event-block from {lampy::redstone::nocne::*}
			send "&aUsunales lampe!" to player
		else:
			cancel event
			send "&cMusisz wlaczyc tryb stawiania lamp!" to player
	
at 19:30:
	loop {lampy::redstone::nocne::*}:
		set block at location at loop-value to lit redstone lamp
		
at 5:20:
	loop {lampy::redstone::nocne::*}:
		set block at location at loop-value to unlit redstone lamp
		
command /stawianielamp [<text>]:
	trigger:
		if player is not op:
			stop
		if {ustawianie::lamp::%player%} is not set:
			set {ustawianie::lamp::%player%} to false
		if arg 1 is "on" or "true":
			set {ustawianie::lamp::%player%} to true
			send "&aTeraz bedziesz ustawial lampy!" to player
		if arg 1 is "off" or "false":
			set {ustawianie::lamp::%player%} to false
			send "&cJuz nie bedziesz ustawial lamp!" to player

Sprawdź jeszcze ewentualnie to.

Dalej nic, żaden z skryptów podanych powyżej nie sprawia, że lampy zaczynają świecić

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
19 minut temu, Parczik napisał:

Dalej nic, żaden z skryptów podanych powyżej nie sprawia, że lampy zaczynają świecić

Potestowałem i doszedłem do wniosku, że problem nie leży w skrypcie, a w samym ustawianiu bloku, mianowicie ustawia lampę, ale ona od razu gaśnie ze względu na brak źródła zasilania.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
16 godzin temu, Helios1993 napisał:
on place of redstone lamp:
	if {ustawianielamp::%player%} is true:
		add location of event-block to {lampy::redstone::nocne::*}
		
on break of redstone lamp:
	if {lampy::redstone::nocne::*} contains location of event-block:
		remove location of event-block from {lampy::redstone::nocne::*}
	
at 19:30:
	loop {lampy::redstone::nocne::*}:
		activate block at loop-value
		
at 5:20:
	loop {lampy::redstone::nocne::*}:
		deactivate block at loop-value
		
command /stawianielamp [<text>]:
	permission: skript.stawianielamp
	trigger:
		if {ustawianielamp::%player%} is not set:
			set {ustawianielamp::%player%} to true
			send "&aTeraz bedziesz ustawial lampy!" to player\
		else:
			clear {ustawianielamp::%player%}
			send "&cJuz nie bedziesz ustawial lamp!" to player

 

To powinno zadziałać.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
command /lamp [<text>]:
	trigger:
		if arg is "on":
			loop {lampy::*}:
				turnon(loop-value)
				set {lamp::%loop-value%} to true
			stop
		if arg is "off":
			loop {lampy::*}:
				set block at loop-value to redstone lamp
				set {lamp::%loop-value%} to false
			stop
		if target block is not redstone lamp:
			send "Blok musi byc lampa!"
			stop
		if arg is "add":
			turnon(location of target block)
			set {lamp::%location of target block%} to true
			add location of target block to {lampy::*}
			send "Poprawnie dodano lampe!"
			stop
		if arg is "remove":
			clear {lamp::%location of target block%}
			remove location of target block from {lampy::*}
			send "Poprawnie usunieto lampe!"
			set target block to redstone lamp
			stop
		if arg is "clear":
			clear {lamp::*} and {lampy::*}
			send "Usunieto wszystkie lampy!"
at 19:30:
	loop {lampy::*}:
		turnon(loop-value)
		#activate block at loop-value
		set {lamp::%loop-value%} to true
at 5:20:
	loop {lampy::*}:
		set block at loop-value to redstone lamp
		set {lamp::%loop-value%} to false
on block physics:
	if event-block is active redstone lamp:
		{lamp::%location of event-block%} is true
		cancel event

 

Edytowane przez xAxee
Odnośnik do komentarza
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Nieaktywny
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

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