Skocz do zawartości
  • 0

Problem ze sryptem na XP


TheXperion
 Udostępnij

Pytanie

Witam otóż na samym początku chciałbym zaznaczyć, że nie jestem dobry w skryptach więc jeśli zrobiłem jakiś głupi błąd czy coś to nie krytykujcie mnie ;D dodam także, że skrypt jest pisany przy pomocy innych. 

on join:    if {xp.%player%} is not set:        set {xp.%player%} to 0        set {xp.%player%::level} to 1on death:    if attacker is player:        if name of entity is "&5Rycerz"        add 1 to {xp.%player%}        if {xp.%player%} is greater than 9:            add 1 to {xp.%player%::level}            send "&aAwansowales na &c%{xp.%player%::level}% &alevel."            clear {xp.%player%}            stop						command /resestxp:    trigger:        set {xp.%player%} to 0        set {xp.%player%::level} to 1	        command /pokazlvl:    trigger:        send "&c%{xp.%player%}% &fpunktow"        send "&c%{xp.%player%::level}% &fpoziom"        on chat:    cancel event		    broadcast "&8[&6%{xp.%player%::level}%&8] %display name of player%&7: &f%message%"

Jest to skrypt, którego zadaniem miało być obliczanie expa i dawanie leveli po zabiciu np. zombiaka o nazwie rycerz.  Niestety przy wgrywaniu wyświetla się 'entity' is not an item stack. Dodam także iż nawet jak usunę tą linijkę to nie dodaje mi +1 za zabicie żadnego moba (wiem to z komendy /pokazlvl)

 

Odnośnik do komentarza
Udostępnij na innych stronach

5 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Dzięki!!!! Teraz mam jeszcze kil;ka pytań. Chcę zrobić tak iż, gdy mam już ten 2 lvl to by wbić 3lvl nie trzeba 10 punktów lecz np. 20. Ktoś pomoże? I jeszcze jedna prośba jest taka by gracz, który nabił ten 2 lvl dostawał jakąś permisję. I jeszcze jedno by lvl koło nicku (który jest prawidłowy) był taki sam jak na pasku jak na screnie. Chodzi mi głównie o to by lvl z paska zastąpić lvl ze skryptu. Z góry dzięki ;D

 

 

Myślałem nad czymś takim by:

if {xp.%attacker%} is greater than 9: 

zmienić na:

if {xp.%attacker%} is greater than (jakaś zmienna):

a do tego dać:

if {xp.%player%::level} is 1 than (jakaś zmienna) is 9if {xp.%player%::level} is 2 than (jakaś zmienna) is 25if {xp.%player%::level} is 3 than (jakaś zmienna) is 50

tylko nie wiem jak to fachowo napisać 

 

 

Tu mój teraźniejszy kod:

on join:    if {xp.%player%} is not set:        set {xp.%player%} to 0        set {xp.%player%::level} to 1 on death:    if name of victim is "&5Rycerz":        if attacker is a player:            add 1 to {xp.%attacker%}            if {xp.%attacker%} is greater than 9:                add 1 to {xp.%attacker%::level}                send "&aAwansowales na &c%{xp.%attacker%::level}% &alevel." to attacker                set {xp.%attacker%} to 0                stop    if name of victim is "&2Green Sheep":        if attacker is a player:            add 2 to {xp.%attacker%}            if {xp.%attacker%} is greater than 9:                add 1 to {xp.%attacker%::level}                send "&aAwansowales na &c%{xp.%attacker%::level}% &alevel." to attacker                set {xp.%attacker%} to 0                stop                                     command /resetxp:    trigger:        set {xp.%player%} to 0        set {xp.%player%::level} to 1         send "&cPomyślnie zresetowałeś poziom"         command /pokazlvl:    trigger:        send "&c%{xp.%player%}% &fpunktow"        send "&c%{xp.%player%::level}% &fpoziom"         on chat:    cancel event            broadcast "&8[&6%{xp.%player%::level}%&8] %display name of player%&7: &f%message%"

post-1958-0-09644300-1430739829_thumb.pn

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

  • 0
on join:	if {xp.%player%} is not set:		set {xp.%player%} to 0		set {xp.%player%::level} to 1		set player's level to 1		set player's level progress to 0on death:	if name of victim is "&5Rycerz":		if attacker is a player:			add 1 to {xp.%attacker%}			set attacker's level progress to {xp.%attacker%}/(10*{xp.%attacker%::level})			if {xp.%attacker%} is greater than (10*{xp.%attacker%::level})-1:				add 1 to {xp.%attacker%::level}				send "&aAwansowales na &c%{xp.%attacker%::level}% &alevel." to attacker				set {xp.%attacker%} to 0			if {xp.%attacker%::level} is 2: #Tutaj level potrzebny do wykonania kodu ponizej				execute console command "pex user %attacker% add essentials.spawn" #Kod wykonywany jezeli warunek zostanie spelnionycommand /resetxp:	trigger:		set {xp.%player%} to 0		set {xp.%player%::level} to 1		set player's level to 1		set player's level progress to 0command /pokazlvl:	trigger:		send "&c%{xp.%player%}% &fpunktow"		send "&c%{xp.%player%::level}% &fpoziom"		send "&7Potrzebujesz &c%(10*{xp.%player%::level}-{xp.%player%})% &7punktow do nastepnego poziomu."on chat:	cancel event	broadcast "&8[&6%{xp.%player%::level}%&8] %display name of player%&7: &f%message%"on experience spawn:	cancel eventon respawn:	wait a tick	set player's level to {xp.%player%::level}	set player's level progress to {xp.%player%}/(10*{xp.%player%::level})
Edytowane przez Shooterowy
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Dzięki tylko jeszcze jedno pytanko.

Tu jest ustawione tak:

 

2lvl - 10

3lvl - 20

4lvl - 30

5lvl  - 40

 

a ja bym chciał by co lewel było więcej o 150 czyli takL:

 

2lvl - 10

3lvl - 160

4lvl - 310

 

itd. ale na razie wszystko o co prosiłem jest ok (jeszcze nie sprawdzałem permisji ale się zobaczy

 

i jeszcze pytanie jak bym chciał z 2 potworami to mam robić tak? (zależy mi na różnym expie z różnego potwora):

if name of victim is "&5Rycerz":        if attacker is a player:            add 1 to {xp.%attacker%}            set attacker's level progress to {xp.%attacker%}/(10*{xp.%attacker%::level})            if {xp.%attacker%} is greater than (10*{xp.%attacker%::level})-1:                add 1 to {xp.%attacker%::level}                send "&aAwansowales na &c%{xp.%attacker%::level}% &alevel." to attacker                set {xp.%attacker%} to 0            if {xp.%attacker%::level} is 2: #Tutaj level potrzebny do wykonania kodu ponizej                execute console command "pex user %attacker% add essentials.spawn" if name of victim is "&2Green Sheep":        if attacker is a player:            add 2 to {xp.%attacker%}            set attacker's level progress to {xp.%attacker%}/(10*{xp.%attacker%::level})            if {xp.%attacker%} is greater than (10*{xp.%attacker%::level})-1:                add 1 to {xp.%attacker%::level}                send "&aAwansowales na &c%{xp.%attacker%::level}% &alevel." to attacker                set {xp.%attacker%} to 0            if {xp.%attacker%::level} is 2: #Tutaj level potrzebny do wykonania kodu ponizej                execute console command "pex user %attacker% add essentials.spawn" 
Edytowane przez TheXperion
Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

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

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