Ischenderun Posted April 26, 2022 Share Posted April 26, 2022 (edited) Alle volte capitano quesiti a cui può rispondere la formula del danno. Non sempre questa strada può essere una via praticabile però.Per questo, oltre a mostrarvi solo alcune dei suoi possibili usi, vi inserirò un articolo di Yanfly sul perchè sconsiglia tale pratica. Note sulle condizioni:Una condizione nella sua forma più comune viene rappresentata con:If(condizione){ *codice da sviluppare nel caso la condizione sia vera}else{*codice da sviluppare nel caso la condizione NON sia vera}Ma noi abbiamo solo una riga pre inserire il codice quindi abbiamo 2 vie praticabili:1) scrivere la condizione if tutta su un unica linea2) usare l'operatore ternario che ci semplifica la scrittura della condizioneOperatore ternario:b.isStateAffected(10) ? 10000 : 1;tutto ciò che viene prima del "?" è la nostra condizione (l'if che abbiamo usato prima)quello che viene dopo il "?" è il codice che si attiva se la condizione è soddisfatta.i ":" rappresentano l nostro else.Quindi se la condizione non è soddisfatta si attiva il codice che si trova dopo i ":"- Obiettivo:- la a si riferisce sempre a chi compie l'azione- la b si riferisce al bersaglio dell'azione- Cambiare HP/MP/TPgainHp(value) - ristora HP del valore indicato (valori negativi vanno in sottrazione)gainMp(value) - ristora MP del valore indicato (valori negativi vanno in sottrazione)gainTp(value) - ristora TP del valore indicato (valori negativi vanno in sottrazione)es. a.gainHp(32)setHp(hp) - setta HP al valore indicatosetMp(mp) - setta MP al valore indicatosetTp(tp) - setta TP al valore indicatoE.g. a.setHp(a.mhp)E.g. a.setHp(a.hp + 100)clearTp() - setta i TP a 0- Stati e controlloisStateAffected(stateId) - controlla se attaccante o difensore sono affetti dallo stato con un determinato IDEs. b.isStateAffected(10) ? 10000 : 1;isDeathStateAffected() - controlla se attaccante o difensore sono affetti dallo stato morte.Es b.isDeathStateAffected() ? 10000 : 1;resetStateCounts(stateId) - resetta i turni per uno stato in corso ad un determinato valore.if (b.isStateAffected(10)) b.resetStateCounts(10); 100addState(stateId) - aggiunge lo stato ad attaccante o difensoreif (!b.isStateAffected(10)) b.addState(10); 100removeState(stateId) - rimuove lo stato ad attaccante o difensoreif (a.isStateAffected(10)) a.removeState(10); 0- Buff e debuff:addBuff(paramId, turns) - aggiunge il buffa.addBuff(0, 3); b.def*10addDebuff(paramId, turns) - aggiunge il debuffb.addDebuff(2, 10); 9999removeBuff(paramId) - rimuove il buffremoveAllBuffs() - rimuove il debuffID Parametri :0 - Max HP1 - Max MP2 - Attack3 - Defence4 - Magic Attack5 - Magic Defence6 - Agility7 - LuckCodice veloce:die() - uccide il bersagliob.die(); 0revive() - rianima il bersaglioa.revive(); 1000paramBase(paramId) - prende il parametro basea.paramBase(3)*10 - b.def*2paramMax(paramId) - prende il massimo valore per il parametrob.paramMax(0)isStateResist(stateId) - controlla se il bersaglio resiste ad uno statoes. c=0; b.isStateResist(10) ? c+=2000 : b.addState(10); c Oggetti:consumeItem(item) - consuma oggettia.consumeItem($dataItems[15]); 100Solo Attori:currentExp() - EXP correnticurrentLevelExp() - EXP needed for current levelnextLevelExp() - EXP needed for next levelnextRequiredExp() - EXP left until next levelmaxLevel() - max level of actorisMaxlevel() - is actor max level (true/false)hasWeapon() - is actor wielding a weapon (true/false)hasArmor() - is actor wearing any armor (true/false)clearEquipments() - unequip everything actor is wearingisClass(gameClass) - checks if actor is of a class (gameClass - $dataClasses[iD])hasNoWeapons() - checks if actor doesn't have any weaponslevelUp() - levels actor uplevelDown() - level actor downgainExp(exp) - gives actor explearnSkill(skillId) - makes actor learn a skillforgetSkill(skillId) - makes actor forget a skillisLearnedSkill(skillId) - checks if actor has a skill learnedactorId() - returns Actor's IDSolo nemici:enemyId() - returns Enemy's IDFormule:Math.random() - ritorna un valore numerico pseudocasuale compreso tra 0 e 1 (0 <= n < 1)Ma esiste ancheMath.randomInt()- ritorna un valore numerico intero pseudocasuale compreso tra 0 e 1Per ottenere quindi un valore casuale compreso tra 1 e ad esempio 20 faremo:Math.randomInt(20)+1Math.round(number) - Arrotonda un valore numerico all'intero più vicinoMath.ceil(number) - Arrotonda un valore numerico all'intero in eccessoMath.floor(number) - Arrotonda un valore numerico all'intero in difetto Articolo di Yanfly che ne sconsiglia l'uso per alcune dinemiche:http://www.yanfly.moe/wiki/Stop_Putting_Mechanics_in_Damage_Formulas Quindi dosate bene questa possibilità e valutate sempre se una formula più complessa può fare al caso vostro oppure no.Buon making a tutti! Edited April 26, 2022 by Ischenderun ☆Polvere di Stelle☆ ora anche su itch.io: https://ischenderun.itch.io/polvere-di-stelle Non ho particolari talenti, sono soltanto appassionatamente curioso.Siate affamati, siate folli, perché solo coloro che sono abbastanza folli da pensare di poter cambiare il mondo lo cambiano davvero.Ad maiora semper Contatto Facebook : https://www.facebook.com/Ischenderun/Pagina Facebook: https://www.facebook.com/Rpg-Maker-Mv-ed-Mz-100937052104281 Link to comment Share on other sites More sharing options...
Guardian of Irael Posted April 26, 2022 Share Posted April 26, 2022 Ottimo elenco di formule, tradotto poi, quindi più che comodo averlo qui.^ ^ Mi è sfuggito un po' il punto iniziale, però! XDAll'inizio dici che non è sempre una via praticabile, ma fai solo l'esempio dell'if con l'operatore ternario, e poi c'è un elenco di formule utili da utilizzare, in quali casi sarebbe sconsigliata la cosa? Solo se diventa troppo lunga? ^ ^ (\_/)(^ ^) <----coniglietto rosso, me! (> <) Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^ http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^ http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^ REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^ 🖤http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gifhttp://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3http://i.imgur.com/MpaUphY.jpg by Idriu E:3Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44) http://i.imgur.com/PgUqHPm.pngUfficiale"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.pngGrazie Testament XD Fan n°1 ufficiale di PQ! :DVivail Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che nonavevo programmi di grafica per fare un banner su questo pc XD (ora ho dinuovo il mio PC veramente :D) Rosso Guardiano dellahttp://i.imgur.com/Os5rvhx.pngRpg2s RPG BY FORUM:Nome: Darth Reveal PV totali 2PA totali 16Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.Bozze vesti non definitive qui.Equipaggiamento:Indossa:60$ e 59$ divisi in due tasche interneLevaitanSpada a due mani elsa lungaGuanti del Defender (2PA)Anello del linguaggio animale (diventato del Richiamo)Scrinieri da lanciere (2 PA)Elmo del Leone (5 PA)Corazza del Leone in Ferro Corrazzato (7 PA) ZAINO (20) contenente:Portamonete in pelle di cinghiale contenente: 100$Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)CordaBottiglia di idromeleForma di formaggioTorcia (serve ad illuminare, dura tre settori)Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)Ampolla BiancaSemi di Balissa CAVALLO NORMALE + SELLA (30 +2 armi) contentente:66$Benda di pronto soccorso x3Spada a due maniFagotto per Adara (fazzoletto ricamato) Link to comment Share on other sites More sharing options...
Ischenderun Posted April 26, 2022 Author Share Posted April 26, 2022 No, è in base a quello che Yanfly cita nel suo articolo. Ho modificato il post in modo che sia più intuitivo ;) ☆Polvere di Stelle☆ ora anche su itch.io: https://ischenderun.itch.io/polvere-di-stelle Non ho particolari talenti, sono soltanto appassionatamente curioso.Siate affamati, siate folli, perché solo coloro che sono abbastanza folli da pensare di poter cambiare il mondo lo cambiano davvero.Ad maiora semper Contatto Facebook : https://www.facebook.com/Ischenderun/Pagina Facebook: https://www.facebook.com/Rpg-Maker-Mv-ed-Mz-100937052104281 Link to comment Share on other sites More sharing options...
Lollo Rocket Diver Posted April 26, 2022 Share Posted April 26, 2022 Molto utile! Io le formule con if al momento le sto scrivendo per intero ma effettivamente la seconda alternativa è molto più snella!Grazie per le info Ische, mi torneranno utilissime. << In FF8 Irvine conosce tutti ma non lo dice fino al 2° CD >> Segui i miei vari lavoretti in queste pagine: GAME DEV (Attualmente in lavorazione: 5th ERA) https://missingseven.itch.io/ - https://gamejolt.com/@MissingSeven - https://twitter.com/missing_seven DISEGNI https://www.instagram.com/lollob_art/ - https://www.deviantart.com/lbillustrator FAI IL BRAVO E GIOCA A THEIA! http://www.theiarpg.com Link to comment Share on other sites More sharing options...
Ischenderun Posted April 26, 2022 Author Share Posted April 26, 2022 Molto utile! Io le formule con if al momento le sto scrivendo per intero ma effettivamente la seconda alternativa è molto più snella!Grazie per le info Ische, mi torneranno utilissime.Dai un occhio anche alle dritte di Yanfly, a me è capitata una cosa simile a quella descritta da Yanfly. Comunque per le abilità non troppo complesse va benissimo 😉 ☆Polvere di Stelle☆ ora anche su itch.io: https://ischenderun.itch.io/polvere-di-stelle Non ho particolari talenti, sono soltanto appassionatamente curioso.Siate affamati, siate folli, perché solo coloro che sono abbastanza folli da pensare di poter cambiare il mondo lo cambiano davvero.Ad maiora semper Contatto Facebook : https://www.facebook.com/Ischenderun/Pagina Facebook: https://www.facebook.com/Rpg-Maker-Mv-ed-Mz-100937052104281 Link to comment Share on other sites More sharing options...
Lollo Rocket Diver Posted April 27, 2022 Share Posted April 27, 2022 Io principalmente le cambio per le condizioni sugli status. Le cose più complesse le gestisco direttamente dalle Action Sequence/Eventi Comuni XD << In FF8 Irvine conosce tutti ma non lo dice fino al 2° CD >> Segui i miei vari lavoretti in queste pagine: GAME DEV (Attualmente in lavorazione: 5th ERA) https://missingseven.itch.io/ - https://gamejolt.com/@MissingSeven - https://twitter.com/missing_seven DISEGNI https://www.instagram.com/lollob_art/ - https://www.deviantart.com/lbillustrator FAI IL BRAVO E GIOCA A THEIA! http://www.theiarpg.com Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now