Skocz do zawartości
  • 0

problem z drzwiami na klucz


pruslay

Pytanie

on rightclick:
	if target block is any door:
		{doors::%target block%} is set
		if player isn't holding tripwire hook named "Klucz do drzwi %{doors::%target block%}%":
			cancel event
			send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
	if block under target block is any door:
		{doors::%block under target block%} is set
		if player isn't holding tripwire hook named "Klucz do drzwi %{doors::%target block%}%":
			cancel event
			send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
		
command setdoor:
	trigger:
		target block is any door
		set {_x} to random integer between 100001 and 999991
		set {doors::%target block%} to {_x}
		give tripwire hook named "Klucz do drzwi %{_x}%" to player
		send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
		

Wie ktoś czemu jak klikam na gorna czesc drzwi, to dobrze wszystko dziala, drzwi otwieraja sie na klucz ale gdy klikam na dolna czesc drzwi, to normalnie sie one otwieraja bez klucza.

I jeszcze chcialbym dodac zeby tych drzwi ktore sa zablokowane na klucz nie dalo sie zniszczyc, ale nie umiem tego zrobic. Pomoze ktos? 

Z góry dziękuję :)

Odnośnik do komentarza
Udostępnij na innych stronach

7 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
command /zamknij:
	trigger:
		if target block is any door:
			if {door::%target block%} is set:
				send "&cTe drzwi są już zablokowane."
				stop
			set {_x} to random integer between 100001 and 999991
			set {door::%target block%} to {_x}
			if "%type of block below target block%" is "%type of target block%":
				set {door::%block below target block%} to {_x}
			else:
				set {door::%block above target block%} to {_x}
			give tripwire hook named "Klucz do drzwi %{_x}%" to player
			send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
on rightclick:
	if target block is any door:
		if {door::%target block%} is set:
			if player isn't holding tripwire hook named "Klucz do drzwi %{door::%target block%}%":
				cancel event
				send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
W dniu 19.04.2022 o 13:45, Shooterowy napisał:
command /zamknij:
	trigger:
		if target block is any door:
			if {door::%target block%} is set:
				send "&cTe drzwi są już zablokowane."
				stop
			set {_x} to random integer between 100001 and 999991
			set {door::%target block%} to {_x}
			if "%type of block below target block%" is "%type of target block%":
				set {door::%block below target block%} to {_x}
			else:
				set {door::%block above target block%} to {_x}
			give tripwire hook named "Klucz do drzwi %{_x}%" to player
			send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
on rightclick:
	if target block is any door:
		if {door::%target block%} is set:
			if player isn't holding tripwire hook named "Klucz do drzwi %{door::%target block%}%":
				cancel event
				send "&cPotrzebujesz klucza, aby otworzyć te drzwi."

Ok a zrobilbys jeszcze tak, że jak niszczę te drzwi to jeżeli gracz nie ma w ręce klucza to jest cancel event?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
command /zamknij:
	trigger:
		if target block is any door:
			if {door::%target block%} is set:
				send "&cTe drzwi są już zablokowane."
				stop
			set {_x} to random integer between 100001 and 999991
			set {door::%target block%} to {_x}
			if "%type of block below target block%" is "%type of target block%":
				set {door::%block below target block%} to {_x}
			else:
				set {door::%block above target block%} to {_x}
			give tripwire hook named "Klucz do drzwi %{_x}%" to player
			send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
on rightclick:
	if target block is any door:
		if {door::%target block%} is set:
			if player isn't holding tripwire hook named "Klucz do drzwi %{door::%target block%}%":
				cancel event
				send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
on break:
	if target block is any door:
    	if {door::%target block%} is set:
			if player isn't holding tripwire hook named "Klucz do drzwi %{door::%target block%}%":
				cancel event

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
W dniu 24.06.2022 o 13:47, GRIERIOR napisał:
command /zamknij:
	trigger:
		if target block is any door:
			if {door::%target block%} is set:
				send "&cTe drzwi są już zablokowane."
				stop
			set {_x} to random integer between 100001 and 999991
			set {door::%target block%} to {_x}
			if "%type of block below target block%" is "%type of target block%":
				set {door::%block below target block%} to {_x}
			else:
				set {door::%block above target block%} to {_x}
			give tripwire hook named "Klucz do drzwi %{_x}%" to player
			send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
on rightclick:
	if target block is any door:
		if {door::%target block%} is set:
			if player isn't holding tripwire hook named "Klucz do drzwi %{door::%target block%}%":
				cancel event
				send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
on break:
	if target block is any door:
    	if {door::%target block%} is set:
			if player isn't holding tripwire hook named "Klucz do drzwi %{door::%target block%}%":
				cancel event

 

dalej jak klikam dolna czesc drzwi to nie działa

 

20 godzin temu, pruslay napisał:

dalej jak klikam dolna czesc drzwi to nie działa

(admin niech polaczy posty)

dziala to tak ze jak wpisze /zamknij i bede patrzyl na gorna czesc drzwi, to nie działa tak jak powinno, ale jak wpisuje komende i patrze na dolna czesc drzwi to wtedy wszystko jest git

 

Glicz

Łączę posty. 

Notatka dodana przez Glicz

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1
6 godzin temu, pruslay napisał:

(admin niech polaczy posty)

dziala to tak ze jak wpisze /zamknij i bede patrzyl na gorna czesc drzwi, to nie działa tak jak powinno, ale jak wpisuje komende i patrze na dolna czesc drzwi to wtedy wszystko jest git

 

function getDownDoorLocation(l: location) :: location:
  if block under {_l} is any door:
    set {_l} to block under {_l}'s location
  return {_l}
command /zamknij:
  trigger:
    if target block is not any door:
      send "Patrz na drzwi"
      stop
    set {_l} to getDownDoorLocation(target block)
    if {DoorLock::%{_l}%} is set:
      send "Te drzwi sa juz zablokowane"
      stop
    set {_code} to random integer between -9999999 and 9999999
    set {DoorLock::%{_l}%} to {_code}
    add tripwire hook named "Klucz do drzwi %{_code}%" to player
    send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
on rightclick:
  if target block is not any door:
    stop
  set {_l} to getDownDoorLocation(target block)
  if {DoorLock::%{_l}%} is not set:
    stop
  if player's tool is tripwire hook named "Klucz do drzwi %{DoorLock::%{_l}%}%":
    stop
  cancel event
  send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
on break:
  if event-block is not any door:
    stop
  set {_l} to getDownDoorLocation(event-block)
  if {DoorLock::%{_l}%} is not set:
    stop
  if player's tool is tripwire hook named "Klucz do drzwi %{DoorLock::%{_l}%}%":
    stop
  cancel event
  send "&cPotrzebujesz klucza, aby zniszczyc te drzwi."

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
11 godzin temu, xAxee napisał:
function getDownDoorLocation(l: location) :: location:
  if block under {_l} is any door:
    set {_l} to block under {_l}'s location
  return {_l}
command /zamknij:
  trigger:
    if target block is not any door:
      send "Patrz na drzwi"
      stop
    set {_l} to getDownDoorLocation(target block)
    if {DoorLock::%{_l}%} is set:
      send "Te drzwi sa juz zablokowane"
      stop
    set {_code} to random integer between -9999999 and 9999999
    set {DoorLock::%{_l}%} to {_code}
    add tripwire hook named "Klucz do drzwi %{_code}%" to player
    send "&aOd teraz by otworzyć te drzwi, otwierając drzwi musisz trzymać ten klucz w ręce."
on rightclick:
  if target block is not any door:
    stop
  set {_l} to getDownDoorLocation(target block)
  if {DoorLock::%{_l}%} is not set:
    stop
  if player's tool is tripwire hook named "Klucz do drzwi %{DoorLock::%{_l}%}%":
    stop
  cancel event
  send "&cPotrzebujesz klucza, aby otworzyć te drzwi."
on break:
  if event-block is not any door:
    stop
  set {_l} to getDownDoorLocation(event-block)
  if {DoorLock::%{_l}%} is not set:
    stop
  if player's tool is tripwire hook named "Klucz do drzwi %{DoorLock::%{_l}%}%":
    stop
  cancel event
  send "&cPotrzebujesz klucza, aby zniszczyc te drzwi."

 

Super, ten kod działa, udało mi sie juz to wczesniej ogarnac troche inaczej ale to tez mi działa! Dzieki :)

Odnośnik do komentarza
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ę...