Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
deregudegu
MoopleDEV
First Mistake....
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
мιкє™
First Mistake....
Why?
What do you think best?
Re: [HELP] Reborn without stats reset
Get another source since moopledev is gms like and you can't code so yah.
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
TiredGuy
Get another source since moopledev is gms like and you can't code so yah.
I didn't understand you.
Re: [HELP] Reborn without stats reset
Here is your npc:
PHP Code:
function start() {
if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=0 && cm.getPlayer().getJob().getId()<=522) {
var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(MapleJob.BEGINNER);
cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 0);
cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);
cm.sendOk("You did reborn and you are now a level 1 Beginner!");
cm.dispose();
} else if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=1000 && cm.getPlayer().getJob().getId()<=1512) {
var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(MapleJob.NOBLESSE);
cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 1000);
cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);
cm.sendOk("You did reborn and you are now a level 1 Noblesse!");
cm.dispose();
} else if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=2000 && cm.getPlayer().getJob().getId()<=2112) {
var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(MapleJob.LEGEND);
cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 2000);
cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);
cm.sendOk("You did reborn and you are now a level 1 Legend!");
cm.dispose();
} else if (cm.getPlayer().getLevel<200) {
cm.sendOk("You aren't level 200!");
} else {
cm.sendOk("GM\SuperGM job can't rebirth. Why? CUS I SAID SO! hahahaha");
}
}
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
AngryPepe
Here is your npc:
PHP Code:
function start() {
if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=0 && cm.getPlayer().getJob().getId()<=522) {
var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(MapleJob.BEGINNER);
cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 0);
cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);
cm.sendOk("You did reborn and you are now a level 1 Beginner!");
cm.dispose();
} else if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=1000 && cm.getPlayer().getJob().getId()<=1512) {
var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(MapleJob.NOBLESSE);
cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 1000);
cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);
cm.sendOk("You did reborn and you are now a level 1 Noblesse!");
cm.dispose();
} else if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=2000 && cm.getPlayer().getJob().getId()<=2112) {
var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(MapleJob.LEGEND);
cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 2000);
cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);
cm.sendOk("You did reborn and you are now a level 1 Legend!");
cm.dispose();
} else if (cm.getPlayer().getLevel<200) {
cm.sendOk("You aren't level 200!");
} else {
cm.sendOk("GM\SuperGM job can't rebirth. Why? CUS I SAID SO! hahahaha");
}
}
And here's the CORRECTION to this NPC:
PHP Code:
function start() {
if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=0 && cm.getPlayer().getJob().getId()<=522) {
rebirth(MapleJob.BEGINNER);
cm.sendOk("You did reborn and you are now a level 1 Beginner!");
cm.dispose();
} else if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=1000 && cm.getPlayer().getJob().getId()<=1512) {
rebirth(MapleJob.NOBLESSE);
cm.sendOk("You did reborn and you are now a level 1 Noblesse!");
cm.dispose();
} else if (cm.getPlayer().getLevel==200 && cm.getPlayer().getJob().getId()>=2000 && cm.getPlayer().getJob().getId()<=2112) {
rebirth(MapleJob.LEGEND);
cm.sendOk("You did reborn and you are now a level 1 Legend!");
cm.dispose();
} else if (cm.getPlayer().getLevel<200) {
cm.sendOk("You aren't level 200!");
} else {
cm.sendOk("GM\SuperGM job can't rebirth. Why? CUS I SAID SO! hahahaha");
}
}
function rebirth(MapleJob job)
{
//var AngryPepe = (cm.getPlayer().getStr()+cm.getPlayer().getDex()+cm.getPlayer().getInt()+cm.getPlayer().getLuk())-16;
cm.getPlayer().setLevel(1);
cm.getPlayer().setExp(0);
//cm.getPlayer().setRemainingSp(AngryPepe);
cm.getPlayer().setJob(job);
/*cm.getPlayer().setStr(4);
cm.getPlayer().setDex(4);
cm.getPlayer().setInt(4);
cm.getPlayer().setLuk(4);*/
cm.getPlayer().updateSingleStat(MapleStat.LEVEL, 1);
cm.getPlayer().updateSingleStat(MapleStat.EXP, 0);
//cm.getPlayer().updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
cm.getPlayer().updateSingleStat(MapleStat.JOB, 0);
/*cm.getPlayer().updateSingleStat(MapleStat.STR, 4);
cm.getPlayer().updateSingleStat(MapleStat.DEX, 4);
cm.getPlayer().updateSingleStat(MapleStat.INT, 4);
cm.getPlayer().updateSingleStat(MapleStat.LUK, 4);*/
}
I cleaned it up a bit, don't blame me if it doesn't work because I know nothing about JavaScript/NPC's.
Remember, he said he DOESN'T want the stats to be resetted.
Re: [HELP] Reborn without stats reset
shakar96:
Look on what he said:
"I want that player becomes level and job 0 and all stats becomes AP."
That's called stat reset isn't it? -.-
Have you tried my script before you posted a "correction" ?
Because mine works perfectly :)
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
AngryPepe
shakar96:
Look on what he said:
"I want that player becomes level and job 0 and all stats becomes AP."
That's called stat reset isn't it? -.-
Have you tried my script before you posted a "correction" ?
Because mine works perfectly :)
I never said yours doesn't work, I said it's stupid that you have the same code under every if statement. Copy-pasting is stupid if you can implement a method instead.
And besides, read what he said:
Quote:
Originally Posted by
deregudegu
Hello,
I found here this script for reborn:
PHP Code:
public void doRebornExplorer() {
setReborns(getReborns() + 1);
List<Pair<MapleStat, Integer>> reborn = new ArrayList<Pair<MapleStat, Integer>>(4);
setLevel(1);
setExp(0);
setJob(MapleJob.BEGINNER);
}
And the NPC execute this 'public'. and resets job, level and status, but
I don't want reset status.
Could someone help me?
Thanks.
Re: [HELP] Reborn without stats reset
I wanted to make sure what he wants before i helped him so i asked:
Quote:
Originally Posted by
deregudegu
But how can I make all the stats become AP?
Thanks to all :D.
Quote:
Originally Posted by
AngryPepe
What do you mean? You want that when a player does reborn and for example he have 304 str, 104 dex, 104 luk, 104 int than is stats will become 4, 4, 4, 4 and he will have 600 AP to add?
Quote:
Originally Posted by
deregudegu
But stats don't became AP.
Quote:
Originally Posted by
AngryPepe
I'm asking you what do you want that will happen -.-
If you tell me what you want, it will be easier to help you ...
Quote:
Originally Posted by
deregudegu
I want that player becomes level and job 0 and all stats becomes AP.
So i made the NPC according to what he said :)
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
AngryPepe
I wanted to make sure what he wants before i helped him so i asked:
So i made the NPC according to what he said :)
Then he's a hypocrite.
Your code still wasn't great, a method (or rather a function) is much better.
EDIT: Also, I think it won't work. cm.getPlayer().getLevel==200 <- isn't getLevel a METHOD? I hardly doubt it's a public variable.
And I'd like to fix your code even more. "cm.getPlayer().getJob().getId()" <- you say this too many times. You call the method a lot, not really good. And I don't like how you always check if the guy is level 200. And... "cm.getPlayer()".
PHP Code:
var player;
function start() {
player = cm.getPlayer();
var job = player.getJob().getId();
if (player.getLevel() == 200) {
if (job >= 0 && job <= 522)
{
rebirth(MapleJob.BEGINNER);
cm.sendOk("You did reborn and you are now a level 1 Beginner!");
cm.dispose();
} else if (job >= 1000 && job <= 1512) {
rebirth(MapleJob.NOBLESSE);
cm.sendOk("You did reborn and you are now a level 1 Noblesse!");
cm.dispose();
} else if (job >= 2000 && job <= 2112) {
rebirth(MapleJob.LEGEND);
cm.sendOk("You did reborn and you are now a level 1 Legend!");
cm.dispose();
} else {
cm.sendOk("GM\SuperGM job can't rebirth. Why? CUS I SAID SO! hahahaha");
}
} else {
cm.sendOk("You aren't level 200!");
}
}
function rebirth(MapleJob job)
{
var AngryPepe = (player.getStr() + player.getDex() + player.getInt() + player.getLuk())-16;
player.setLevel(1);
player.setExp(0);
player.setRemainingSp(AngryPepe);
player.setJob(job);
player.setStr(4);
player.setDex(4);
player.setInt(4);
player.setLuk(4);
player.updateSingleStat(MapleStat.LEVEL, 1);
player.updateSingleStat(MapleStat.EXP, 0);
player.updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
player.updateSingleStat(MapleStat.JOB, 0);
player.updateSingleStat(MapleStat.STR, 4);
player.updateSingleStat(MapleStat.DEX, 4);
player.updateSingleStat(MapleStat.INT, 4);
player.updateSingleStat(MapleStat.LUK, 4);
}
I know your code works (except for the getLevel() thing), but it's not efficient. Nor is it readable.
This one, I believe, is better^.
EDIT 2: Hmm, I still don't like it. The code is not reusable if it's left as it is.
I think it's better to do something like this (the following is in Java, I don't know how to do it in JavaScript, even though it might be the same):
int race = job/1000;
switch (race)
{
case 0: /*ADVENTURER*/ break;
case 1: /*CYGNUS*/ break;
case 2: /*HERO*/ break;
default: /*HACKER*/ break;
}
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
AngryPepe
shakar96:
Look on what he said:
"I want that player becomes level and job 0 and all stats becomes AP."
That's called stat reset isn't it? -.-
Have you tried my script before you posted a "correction" ?
Because mine works perfectly :)
It doesn't work perfectly so shut up.
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
shakar96
Then he's a hypocrite.
Your code still wasn't great, a method (or rather a function) is much better.
EDIT: Also, I think it won't work. cm.getPlayer().getLevel==200 <- isn't getLevel a METHOD? I hardly doubt it's a public variable.
And I'd like to fix your code even more. "cm.getPlayer().getJob().getId()" <- you say this too many times. You call the method a lot, not really good. And I don't like how you always check if the guy is level 200. And... "cm.getPlayer()".
PHP Code:
var player;
function start() {
player = cm.getPlayer();
var job = player.getJob().getId();
if (player.getLevel() == 200) {
if (job >= 0 && job <= 522)
{
rebirth(MapleJob.BEGINNER);
cm.sendOk("You did reborn and you are now a level 1 Beginner!");
cm.dispose();
} else if (job >= 1000 && job <= 1512) {
rebirth(MapleJob.NOBLESSE);
cm.sendOk("You did reborn and you are now a level 1 Noblesse!");
cm.dispose();
} else if (job >= 2000 && job <= 2112) {
rebirth(MapleJob.LEGEND);
cm.sendOk("You did reborn and you are now a level 1 Legend!");
cm.dispose();
} else {
cm.sendOk("GM\SuperGM job can't rebirth. Why? CUS I SAID SO! hahahaha");
}
} else {
cm.sendOk("You aren't level 200!");
}
}
function rebirth(MapleJob job)
{
var AngryPepe = (player.getStr() + player.getDex() + player.getInt() + player.getLuk())-16;
player.setLevel(1);
player.setExp(0);
player.setRemainingSp(AngryPepe);
player.setJob(job);
player.setStr(4);
player.setDex(4);
player.setInt(4);
player.setLuk(4);
player.updateSingleStat(MapleStat.LEVEL, 1);
player.updateSingleStat(MapleStat.EXP, 0);
player.updateSingleStat(MapleStat.AVAILABLESP, AngryPepe);
player.updateSingleStat(MapleStat.JOB, 0);
player.updateSingleStat(MapleStat.STR, 4);
player.updateSingleStat(MapleStat.DEX, 4);
player.updateSingleStat(MapleStat.INT, 4);
player.updateSingleStat(MapleStat.LUK, 4);
}
I know your code works (except for the getLevel() thing), but it's not efficient. Nor is it readable.
This one, I believe, is better^.
EDIT 2: Hmm, I still don't like it. The code is not reusable if it's left as it is.
I think it's better to do something like this (the following is in Java, I don't know how to do it in JavaScript, even though it might be the same):
int race = job/1000;
switch (race)
{
case 0: /*ADVENTURER*/ break;
case 1: /*CYGNUS*/ break;
case 2: /*HERO*/ break;
default: /*HACKER*/ break;
}
The getLevel is fine, it works don't worry. Thanks a lot for the lesson, it is always great to learn new things :)
Quote:
Originally Posted by
TiredGuy
It doesn't work perfectly so shut up.
I tested it, so go get your self some friends :)
Re: [HELP] Reborn without stats reset
Quote:
Originally Posted by
AngryPepe
The getLevel is fine, it works don't worry. Thanks a lot for the lesson, it is always great to learn new things :)
I tested it, so go get your self some friends :)
Thanks to all again.
This code don't add reborn in mysql.
Re: [HELP] Reborn without stats reset
You have never asked for it lol ...
I asked you exactly what do you want and you never mentioned it 0.0
Anyway, just add:
PHP Code:
cm.getPlayer().setReborns(getReborns() + 1);
Re: [HELP] Reborn without stats reset
Thanks AngryPepe for your patience.
Thanks to all.
I'll test this code and I'll post here the result.
#EDIT
PHP Code:
cm.getPlayer().setReborns(getReborns() + 1);
Could it be?
PHP Code:
player.setReborns(getReborns() + 1);
Just add in your function?
#EDIT 2
Don't work.