• Digitaaliset tarvikkeet
  • Palvelin
  • Digitaalinen elämä
  • Tietosuojakäytäntö
  • Ota meihin yhteyttä
  1. Home
  2. Palvelin
  3. SKRIPT - forums.minehut.com

SKRIPT - forums.minehut.com

Rsdaa 22/10/2021 2116

Skripti - Aloittelijan virheet& Kuinka optimoida koodisi Teen tämän viestin uusien kehittäjien auttamiseksi. Käymme ensin läpi Skriptin yleiset virheet, sitten alan opettaa sinulle oman koodisi optimointia. Yleinen virhe #1 - Välilyöntien käyttö tai sisennyksen unohtaminen Skriptissä kaiken koodin on oltava sisennetty, 4 välilyöntiä tai 1 sarkain. Mitä eroa on sarkainten ja välilyöntien välillä? Sarkaimessa on 4 välilyöntiä, mutta yhden välilyönnin käyttäminen poistaa välittömästi 4 välilyöntiä, ja näppäimistön sarkainpainikkeen painaminen tekee välittömästi neljä välilyöntiä. Se on nopeampi ja tehokkaampi. Jotkut sanovat, että se on tehoton muilla kielillä, kuten Java, mikä ei ole totta, kielet, kuten Java, eivät ole liian keskittyneet sisennykseen, eivät niin paljon kuin Skript, koska useimmat IDE:t sisentävät automaattisesti puolestasi tai kaikki välilehdet muunnetaan. välilyönteihin päivän lopussa joka tapauksessa.Esimerkki huonosta koodista:

on break:send "Olet rikkonut lohkon!"Anna 1 timantti pelaajille ja "Gave Diamond!"

Ongelma on, että KAIKKI tämän koodin täytyy olla 4 välilyöntiä (tai 1 sarkain). Sisennät koodisi vain 'if'- tai minkä tahansa kaksoispisteeseen päättyvän koodin jälkeen :Yleinen virhe #2Käyttämällä .%playerin uuid%:a ::%playerin uuid%:n sijaan tai käyttämällä %player% Pelaajakohtainen muuttuja Skriptissä näyttää tältä : {mana::%player's uuid%} Ja yleinen virhe, jonka ihmiset tekevät, on käyttää {mana.%player's uuid%} ; käyttämällä ::a . on parempi, koska se tallentaa muuttujasi paremmin variables.csv-tiedostoon; Lisäksi monet pelaajat tekevät sen virheen, että he käyttävät %player%:a, kun he eivät sitä halua. Kun käytät %player%, tallennat arvon pelaajan nimeen, mikä tarkoittaa, että jos hän joskus muuttaa nimeään, kaikki hänen edistymisensä poistetaan. Käytä sen sijaan %playerin uuid%:a.Esimerkki hyvästä muuttujasta:{mana::%player's uuid%}Yleinen virhe #3Spagettikoodi Huh, odota SIINÄ ON SPAGETTIA?Ei. Tämä on spagettikoodi.

komento /myy:liipaisu:jos pelaajan hallussa oleva esine ei ole rautaharkko:jos pelaajan hallussa oleva esine ei ole kultaharkko:jos pelaajan hallussa oleva esine ei ole hiiltä:jos pelaajan hallussa oleva esine ei ole timantti:jos pelaajan hallussa oleva esine ei ole 't an emerald:send "Esimerkki"else:send "Et voi myydä smaragdeja!:else:send "Et voi myydä timantteja!:else:send "Et voi myydä hiiltä!:else:send "Et voi myydä hiiltä! en voi myydä rautaharkkoja!:else:send "Et voi myydä rautaharkkoja!:

Juuri niin.. monta turhaa jos:ta. Okei, "Rosa! Mutta kuinka muuten minun pitäisi lähettää mukautettu viesti jokaiselle tuotteelle, jota heidän ei pitäisi myydä UVU"Simple.

komento /sell:trigger:jos pelaajan hallussa oleva esine ei ole rautaharkkoa tai timanttia tai smaragdia tai kultaharkkoa tai hiiltä:send "Esimerkki"else:send "Et voi lähettää %pelaajan hallussa olevaa esinettä%!"

Tämä tekee täsmälleen saman asian: %pelaajan hallussa oleva tuote% on se, mitä he pitävät hallussaan, joten tämä on mukautettu viesti jokaiselle esineelle, jota he eivät voi myydä 12 rivillä vähemmän. Jos et aio käyttää "muuta", voit myös tehdä

komento /sell:trigger:pelaajan hallussa oleva esine ei ole rautaharkkoa tai timanttia tai smaragdia tai kultaharkkoa tai hiiliharkkoa tai hiilenlähetys "Esimerkki"

Ei, jos sitä tarvitaan. Tee se kaikissa mahdollisissa olosuhteissa. Osa II - Koodin optimointi En mene liian syvälle tässä osiossa. Vain joukko temppupätkiä, joita olen oppinut vuosien varrella. Vinkki #1Poista mahdollisimman monta muuttujaa Kun olet valmis poistamaan muuttujan, se on todella helppoa. Sano, että {mana::%player's uuid%} on muuttujasi. Joka tapauksessa tai komento tarvittaessa, laita vain delete {mana::%player's uuid%} nyt. EN EHDOTTOMASTI suosittele tärkeiden muuttujien poistamista, mutta jos käytät muuttujaa vain väliaikaiseen, lyhyeen tehtävään, poista se. käytön jälkeen tai poista se, kun soitin poistuu. Tämä johtaa meidät paikallisiin muuttujiin, kaikki paikalliset muuttujat alkavat kirjaimella "_", esimerkiksi: {_timer::%player's uuid%} tai {_t} ovat paikallisia muuttujia. Kun koodi pysähtyy, ne poistetaan automaattisesti. Niitä ei koskaan tallenneta muuttujiin.csvKäytä näitä, kun haluat tallentaa jotain tai käytä muuttujaa koodissa vain tälle koodille.Vinkki #2Käytä RAM-muuttujia, PLEASE! Mitä ovat RAM-muuttujat? No, kun palvelimesi pysähtyy tai käynnistyy uudelleen, ne poistetaan automaattisesti. RAM-muuttuja alkaa aina kirjaimella "-" tai millä tahansa arvolla, jonka asetat tiedostossa config.yml, koska tämä ei ole normaalissa Skriptissä, sinun on otettava tämä käyttöön tiedostossa config.ymlTämä artikkeli näyttää, kuinka voit tehdä minkä tahansa muuttujan, joka alkaa - poista uudelleenkäynnistyksen yhteydessä - https://forums.skunity.com/threads/skript-variables-ram.5865/Joten RAM-muuttujat on määritetty. Tältä ne näyttävät: {-thirst::%player's uuid%}Ne ovat ERITTÄIN hyödyllisiä arvojen, kuten janomittarin, tallentamiseen tai mihin tahansa muuhun tarkoitukseen. Kun ne on määritetty, aloita mikä tahansa muuttuja merkillä "-", jotta se poistaa muuttujan palvelimen uudelleenkäynnistyksen yhteydessä. Tämä estää variables.csv:tä tukkeutumasta hyödyttömillä muuttujilla, joita ei tarvitse tallentaa uudelleenkäynnistyksen jälkeen.

Vinkki #3 Uh.. Miksi etsit pelaajia tulostaulullesi?Yksi hyödyllisimmistä vinkeistä mille tahansa Minehut-palvelimelle. ÄLÄ loop pelaajia tulostaulullesi, on olemassa äärettömän parempi tapa, ja se vaatii vain SkBeeTämä on esimerkki menetelmästäni. Tee tulostaulustasi samanlainen kuin minun ja laita se funktioksi.

function score(p: player):aseta {_uuid} käyttäjän {_p} tulostaulun uuidset otsikoksi "&lPIE&lDOMS" aseta käyttäjän {_p} tulostaulun riviksi 11 "&l" [/pie] "asettaa käyttäjän {_p} tulostaulun riviksi 10 "&7"asettaa käyttäjän {_p} tulostaulun riviksi 9 "●&f Coins&8 |&f %{_p}" balance%"asettaa käyttäjän {_p} tulostaulun riviksi 8 "&7"asettaa käyttäjän {_p} tulostaulun riviksi 7 "●&f Kills&8 |&f %{stats::%{_uuid }%::kills}%"asettaa käyttäjän {_p} tulostaulun riville 6 "●&f Level&8 |&f %{stats::%{_uuid}%::lvl}%"asettaa riville 5 Käyttäjän {_p} tulostaulusta "●&f Pies Baked&8 |&f %{stats::%{_uuid}%::pies}%" asetti käyttäjän {_p} tulostaulun riviksi 4 "& ;7"aseta käyttäjän {_p} tulostaulun riviksi 3 "&lTue meitä - [/buy]"aseta käyttäjän {_p} tulostaulun riviksi 2 "&5"asettaa käyttäjän {_p} riviksi 1 tulostaulu muotoon "&f{ /discord&f | /pie&f |/profile&f }"kytkee käyttäjän {_p} tulostaulun päälle

Aina kun päivität tulostaulun arvon, aseta koodiisi score(player) )

on join:score(player)

Mini-tip BONUS-osio!Vinkki #4 - Käytä toimintoja AINA voit, älä aliarvioi niiden kykyä. Minun piti esimerkiksi tehdä 10+ Shop GUIS palvelimelleni. Tein toiminnon, jonka avulla voin tehdä minkä tahansa haluamani graafisen käyttöliittymän yhdelle koodiriville käyttämällä funktiota, jossa on noin 15-20 riviä. Vihje #4 - Poista varmuuskopiot käytöstä config.yml-tiedostossa, jotta palvelimesi ei tuota loputtomasti satoja tuhansia varmuuskopioita ylitöitä; Yleensä palvelin kuolee aina, kun se käynnistetään.

Vinkki 5 - Käytä aina näitä hyödyllisiä syötteitä "silmukan kaikki pelaajat" sijaan -

lähetä "%player% executed command &e %full command%" kaikille pelaajille, joissa [{-cspy::%input's uuid%} on true]lähetä "%player% >> %message%" kaikille pelaajille, joille syöte hänellä on lupa "Staffchat"]


PREV: Kuinka ottaa Apache Virtual Host käyttöön Windows 10:ssä. - Linux ...

NEXT: Kuinka luetella kaikki virtuaalipalvelimet Apache-verkkopalvelimessa

Popular Articles

Hot Articles
Back to Top