Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
ALilHope
So where do we get skillbooks? And why is Bell not working in the subway
i have a duey skill book seller if u want that. and i just replaced my bell with my old .js script for b4
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Yes please post the skill book seller
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
ryuko
i have a duey skill book seller if u want that. and i just replaced my bell with my old .js script for b4
Alright, thanks =)
Re: [Release] OdinMS rev947 RE-pack Limited Edition
heres my duey skill book shop. It has most working skills in it. i also removed the books for dcing skills (i.e. Big bang, and shadow shifter)
http://www.mediafire.com/?w3qzcbyjzjv
EDIT: Now if someone could help me with Compiling something that would be nice
Got my hopes up T_T
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
ryuko
heres my duey skill book shop. It has most working skills in it. i also removed the books for dcing skills (i.e. Big bang, and shadow shifter)
http://www.mediafire.com/?w3qzcbyjzjv
EDIT: Now if someone could help me with Compiling something that would be nice
what file do u have compiling problems on? the npcconversation one? if so i can give u the one i compiled with the rebirth system in without any problems..but when i click on my npc i cant seem to get him to work.
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
darkfuryex
what file do u have compiling problems on? the npcconversation one? if so i can give u the one i compiled with the rebirth system in without any problems..but when i click on my npc i cant seem to get him to work.
YES PLZ ZOMG. I could compile on my v.54 files but not my v.55 files and im not sure why
and i have a working npc if u want it for rebirth
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Heres my Rebirth NPC. Its Nana(H) In henesys.
http://www.mediafire.com/?qudyoxugp5m
Edit: i think he stole my npc script and ran =_=
Re: [Release] OdinMS rev947 RE-pack Limited Edition
how to fix players cant past character screen ?
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
ryuko
YES PLZ ZOMG. I could compile on my v.54 files but not my v.55 files and im not sure why
and i have a working npc if u want it for rebirth
Yep it work alright :D
http://i19.photobucket.com/albums/b1...aple0008-2.jpg
http://i19.photobucket.com/albums/b1.../Maple0009.jpg
heres the code for NPCScriptManager.java located at \src\net\sf\odinms\scripting\npc
Code:
/*
This file is part of the OdinMS Maple Story Server
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
Matthias Butz <matze@odinms.de>
Jan Christian Meyer <vimes@odinms.de>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License version 3
as published by the Free Software Foundation. You may not use, modify
or distribute this program under any other version of the
GNU Affero General Public License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.sf.odinms.scripting.npc;
import java.util.LinkedList;
import java.util.List;
import net.sf.odinms.client.IItem;
import net.sf.odinms.client.Item;
import net.sf.odinms.client.MapleCharacter;
import net.sf.odinms.client.MapleClient;
import net.sf.odinms.client.MapleInventory;
import net.sf.odinms.client.MapleInventoryType;
import net.sf.odinms.client.MapleJob;
import net.sf.odinms.client.MapleStat;
import net.sf.odinms.client.SkillFactory;
import net.sf.odinms.scripting.AbstractPlayerInteraction;
import net.sf.odinms.scripting.event.EventManager;
import net.sf.odinms.server.MapleInventoryManipulator;
import net.sf.odinms.server.MapleItemInformationProvider;
import net.sf.odinms.server.MapleShopFactory;
import net.sf.odinms.server.quest.MapleQuest;
import net.sf.odinms.tools.MaplePacketCreator;
/**
*
* @author Matze
*/
public class NPCConversationManager extends AbstractPlayerInteraction {
private int npc;
private String getText;
public NPCConversationManager(MapleClient c, int npc) {
super(c);
this.npc = npc;
}
public void dispose() {
NPCScriptManager.getInstance().dispose(this);
}
public void sendNext(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "00 01"));
}
public void sendPrev(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "01 00"));
}
public void sendNextPrev(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "01 01"));
}
public void sendOk(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "00 00"));
}
public void sendYesNo(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 1, text, ""));
}
public void sendAcceptDecline(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 2, text, ""));
}
public void sendSimple(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 5, text, ""));
}
public void sendStyle(String text, int styles[]) {
getClient().getSession().write(MaplePacketCreator.getNPCTalkStyle(npc, text, styles));
}
public void sendGetNumber(String text, int def, int min, int max) {
getClient().getSession().write(MaplePacketCreator.getNPCTalkNum(npc, text, def, min, max));
}
public void sendGetText(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalkText(npc, text));
}
public void setGetText(String text) {
this.getText = text;
}
public String getText() {
return this.getText;
}
public void openShop(int id) {
MapleShopFactory.getInstance().getShop(id).sendShop(getClient());
}
public void changeJob(MapleJob job) {
getPlayer().changeJob(job);
}
public MapleJob getJob() {
return getPlayer().getJob();
}
public void startQuest(int id) {
MapleQuest.getInstance(id).start(getPlayer(), npc);
}
public void completeQuest(int id) {
MapleQuest.getInstance(id).complete(getPlayer(), npc);
}
public void forfeitQuest(int id) {
MapleQuest.getInstance(id).forfeit(getPlayer());
}
/**
* use getPlayer().getMeso() instead
* @return
*/
@Deprecated
public int getMeso() {
return getPlayer().getMeso();
}
public void gainMeso(int gain) {
getPlayer().gainMeso(gain, true, false, true);
}
public void gainExp(int gain) {
getPlayer().gainExp(gain, true, true);
}
public void setLevel(int level) {
getPlayer().setLevel(level);
getPlayer().updateSingleStat(MapleStat.LEVEL, Integer.valueOf(level));
}
public void setExp(int exp) {
getPlayer().updateSingleStat(MapleStat.EXP, Integer.valueOf(exp));
}
public int getNpc() {
return npc;
}
/**
* use getPlayer().getLevel() instead
* @return
*/
@Deprecated
public int getLevel() {
return getPlayer().getLevel();
}
public void unequipEverything() {
MapleInventory equipped = getChar().getInventory(MapleInventoryType.EQUIPPED);
MapleInventory equip = getChar().getInventory(MapleInventoryType.EQUIP);
List<Byte> ids = new LinkedList<Byte>();
for (IItem item : equipped.list()) {
ids.add(item.getPosition());
}
for (byte id : ids) {
MapleInventoryManipulator.unequip(getC(), id, equip.getNextFreeSlot());
}
}
public void teachSkill(int id, int level, int masterlevel) {
getPlayer().changeSkillLevel(SkillFactory.getSkill(id), level, masterlevel);
}
/**
* Use getPlayer() instead (for consistency with MapleClient)
* @return
*/
@Deprecated
public MapleCharacter getChar() {
return getPlayer();
}
public MapleClient getC() {
return getClient();
}
public void rechargeStars() {
MapleItemInformationProvider ii = MapleItemInformationProvider.getInstance();
IItem stars = getChar().getInventory(MapleInventoryType.USE).getItem((byte) 1);
if (ii.isThrowingStar(stars.getItemId())) {
stars.setQuantity(ii.getSlotMax(stars.getItemId()));
getC().getSession().write(MaplePacketCreator.updateInventorySlot(MapleInventoryType.USE, (Item) stars));
}
}
public EventManager getEventManager(String event) {
return getClient().getChannelServer().getEventSM().getEventManager(event);
}
public void updateJQ() {
getPlayer().updateJQ();
}
public boolean grabJQ () {
return getPlayer().grabJQ();
}
public void showEffect(String effect) {
getPlayer().getMap().broadcastMessage(MaplePacketCreator.showEffect(effect));
}
public void playSound(String sound) {
getClient().getPlayer().getMap().broadcastMessage(MaplePacketCreator.playSound(sound));
}
public void setHair(int hair) {
getPlayer().setHair(hair);
getPlayer().updateSingleStat(MapleStat.HAIR, hair);
getPlayer().equipChanged();
}
public void setFace(int face) {
getPlayer().setFace(face);
getPlayer().updateSingleStat(MapleStat.FACE, face);
getPlayer().equipChanged();
}
public void setFame(int fame) {
getPlayer().setFame(fame);
getPlayer().updateSingleStat(MapleStat.FAME, Integer.valueOf(fame));
}
public void gainFame(int fame) {
getPlayer().gainFame(fame);
}
public void setSkin(int color) {
getPlayer().setSkinColor(getPlayer().getSkinColor().getById(color));
getPlayer().updateSingleStat(MapleStat.SKIN, color);
getPlayer().equipChanged();
}
@Override
public String toString() {
return "Conversation with NPC: " + npc;
}
}
or
http://www.mediafire.com/?az0pxwfxa3j
replace in \src\net\sf\odinms\scripting\npc
and compile...
since ur helpful to other players i might as well be the same towards u ^_^ ..
edit: o ya btw theres a bad thing about this rebirth npc...they dont remove ur current skills from keyboard..players reborning can abuse the previous job skills lol
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
woainioh
nice.... =]
wa u haven sleep...ehh btw do u know how to change guild name to admin? i cant edit in database =/ weird...
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
darkfuryex
Yep it work alright :D
http://i19.photobucket.com/albums/b1...aple0008-2.jpg
http://i19.photobucket.com/albums/b1.../Maple0009.jpg
heres the code for NPCScriptManager.java located at \src\net\sf\odinms\scripting\npc
Code:
/*
This file is part of the OdinMS Maple Story Server
Copyright (C) 2008 Patrick Huy <patrick.huy@frz.cc>
Matthias Butz <matze@odinms.de>
Jan Christian Meyer <vimes@odinms.de>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License version 3
as published by the Free Software Foundation. You may not use, modify
or distribute this program under any other version of the
GNU Affero General Public License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package net.sf.odinms.scripting.npc;
import java.util.LinkedList;
import java.util.List;
import net.sf.odinms.client.IItem;
import net.sf.odinms.client.Item;
import net.sf.odinms.client.MapleCharacter;
import net.sf.odinms.client.MapleClient;
import net.sf.odinms.client.MapleInventory;
import net.sf.odinms.client.MapleInventoryType;
import net.sf.odinms.client.MapleJob;
import net.sf.odinms.client.MapleStat;
import net.sf.odinms.client.SkillFactory;
import net.sf.odinms.scripting.AbstractPlayerInteraction;
import net.sf.odinms.scripting.event.EventManager;
import net.sf.odinms.server.MapleInventoryManipulator;
import net.sf.odinms.server.MapleItemInformationProvider;
import net.sf.odinms.server.MapleShopFactory;
import net.sf.odinms.server.quest.MapleQuest;
import net.sf.odinms.tools.MaplePacketCreator;
/**
*
* @author Matze
*/
public class NPCConversationManager extends AbstractPlayerInteraction {
private int npc;
private String getText;
public NPCConversationManager(MapleClient c, int npc) {
super(c);
this.npc = npc;
}
public void dispose() {
NPCScriptManager.getInstance().dispose(this);
}
public void sendNext(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "00 01"));
}
public void sendPrev(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "01 00"));
}
public void sendNextPrev(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "01 01"));
}
public void sendOk(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 0, text, "00 00"));
}
public void sendYesNo(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 1, text, ""));
}
public void sendAcceptDecline(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 2, text, ""));
}
public void sendSimple(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalk(npc, (byte) 5, text, ""));
}
public void sendStyle(String text, int styles[]) {
getClient().getSession().write(MaplePacketCreator.getNPCTalkStyle(npc, text, styles));
}
public void sendGetNumber(String text, int def, int min, int max) {
getClient().getSession().write(MaplePacketCreator.getNPCTalkNum(npc, text, def, min, max));
}
public void sendGetText(String text) {
getClient().getSession().write(MaplePacketCreator.getNPCTalkText(npc, text));
}
public void setGetText(String text) {
this.getText = text;
}
public String getText() {
return this.getText;
}
public void openShop(int id) {
MapleShopFactory.getInstance().getShop(id).sendShop(getClient());
}
public void changeJob(MapleJob job) {
getPlayer().changeJob(job);
}
public MapleJob getJob() {
return getPlayer().getJob();
}
public void startQuest(int id) {
MapleQuest.getInstance(id).start(getPlayer(), npc);
}
public void completeQuest(int id) {
MapleQuest.getInstance(id).complete(getPlayer(), npc);
}
public void forfeitQuest(int id) {
MapleQuest.getInstance(id).forfeit(getPlayer());
}
/**
* use getPlayer().getMeso() instead
* @return
*/
@Deprecated
public int getMeso() {
return getPlayer().getMeso();
}
public void gainMeso(int gain) {
getPlayer().gainMeso(gain, true, false, true);
}
public void gainExp(int gain) {
getPlayer().gainExp(gain, true, true);
}
public void setLevel(int level) {
getPlayer().setLevel(level);
getPlayer().updateSingleStat(MapleStat.LEVEL, Integer.valueOf(level));
}
public void setExp(int exp) {
getPlayer().updateSingleStat(MapleStat.EXP, Integer.valueOf(exp));
}
public int getNpc() {
return npc;
}
/**
* use getPlayer().getLevel() instead
* @return
*/
@Deprecated
public int getLevel() {
return getPlayer().getLevel();
}
public void unequipEverything() {
MapleInventory equipped = getChar().getInventory(MapleInventoryType.EQUIPPED);
MapleInventory equip = getChar().getInventory(MapleInventoryType.EQUIP);
List<Byte> ids = new LinkedList<Byte>();
for (IItem item : equipped.list()) {
ids.add(item.getPosition());
}
for (byte id : ids) {
MapleInventoryManipulator.unequip(getC(), id, equip.getNextFreeSlot());
}
}
public void teachSkill(int id, int level, int masterlevel) {
getPlayer().changeSkillLevel(SkillFactory.getSkill(id), level, masterlevel);
}
/**
* Use getPlayer() instead (for consistency with MapleClient)
* @return
*/
@Deprecated
public MapleCharacter getChar() {
return getPlayer();
}
public MapleClient getC() {
return getClient();
}
public void rechargeStars() {
MapleItemInformationProvider ii = MapleItemInformationProvider.getInstance();
IItem stars = getChar().getInventory(MapleInventoryType.USE).getItem((byte) 1);
if (ii.isThrowingStar(stars.getItemId())) {
stars.setQuantity(ii.getSlotMax(stars.getItemId()));
getC().getSession().write(MaplePacketCreator.updateInventorySlot(MapleInventoryType.USE, (Item) stars));
}
}
public EventManager getEventManager(String event) {
return getClient().getChannelServer().getEventSM().getEventManager(event);
}
public void updateJQ() {
getPlayer().updateJQ();
}
public boolean grabJQ () {
return getPlayer().grabJQ();
}
public void showEffect(String effect) {
getPlayer().getMap().broadcastMessage(MaplePacketCreator.showEffect(effect));
}
public void playSound(String sound) {
getClient().getPlayer().getMap().broadcastMessage(MaplePacketCreator.playSound(sound));
}
public void setHair(int hair) {
getPlayer().setHair(hair);
getPlayer().updateSingleStat(MapleStat.HAIR, hair);
getPlayer().equipChanged();
}
public void setFace(int face) {
getPlayer().setFace(face);
getPlayer().updateSingleStat(MapleStat.FACE, face);
getPlayer().equipChanged();
}
public void setFame(int fame) {
getPlayer().setFame(fame);
getPlayer().updateSingleStat(MapleStat.FAME, Integer.valueOf(fame));
}
public void gainFame(int fame) {
getPlayer().gainFame(fame);
}
public void setSkin(int color) {
getPlayer().setSkinColor(getPlayer().getSkinColor().getById(color));
getPlayer().updateSingleStat(MapleStat.SKIN, color);
getPlayer().equipChanged();
}
@Override
public String toString() {
return "Conversation with NPC: " + npc;
}
}
or
http://www.mediafire.com/?az0pxwfxa3j
replace in \src\net\sf\odinms\scripting\npc
and compile...
since ur helpful to other players i might as well be the same towards u ^_^ ..
edit: o ya btw theres a bad thing about this rebirth npc...they dont remove ur current skills from keyboard..players reborning can abuse the previous job skills lol
ty. and about the skills. thats the point i was trying to make. they could make a hybrid character which i find awesome. I.e a Magic Warrior, which brings a whole new depth to the server
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Quote:
Originally Posted by
Sparks
for those wanting 2nd, 3rd, 4th job all in 1 NPC does it for you, here's how.
No complying needed:
http://www.odinms.de/forum/showthread.php?t=67411
Now would someone PLEASE mind helping me out... I can't see my character on the character select and I've ran all the .sql files.
I've posted that in the past few pages.
The cause of error 38 is shadow shifter for thieves I believe.
Re: [Release] OdinMS rev947 RE-pack Limited Edition
Rebirth NPC Script:
Code:
/*
@ Author : Snow
@
@ NPC = NAME
@ Map = MAP
@ NPC MapId = MAPID
@ Function = Rebirth Player
@
*/
var status = 0;
function start() {
status = -1;
action(1, 0, 0);
}
function action(mode, type, selection) {
if (mode == -1) {//ExitChat
cm.dispose();
}else if (mode == 0){//No
cm.sendOk("Ok, talk to me when your sure you want to #bRebirth#k.");
cm.dispose();
}else{ //Regular Talk
if (mode == 1)
status++;
else
status--;
if (status == 0) {
cm.sendYesNo("Welcome, great hero. You have been through a long and challenging road, and you have become immensely strong. If you bring me a Maple Coin,I can use my magic to increase your power even further, and surpass your limits! You will become a level 1 Beginner again, but you will keep your stats the same and all the Skill in you Hot Keys. Do you wish to be reborn?" );
}else if (status == 1) {
if(cm.getChar().getLevel() < 199){
cm.sendOk("Sorry, You have to be level 199 to rebirth.");
cm.dispose();
}else if (cm.haveItem(4001129) == false){
cm.sendOk("You did not bring me my Pocky D:");
cm.dispose();
}else{
cm.sendOk("#bGood-Job#k, you have qualified for a #eRebirth#n.");
}
}else if (status == 2) {
cm.getChar().setLevel(2);
cm.setExp(12)
cm.changeJob(net.sf.odinms.client.MapleJob.BEGINNER);
cm.gainItem(4001129,-1);
cm.setExp(12)
cm.sendNext("Enjoy your rebirth!(Note: You will have to Change Channels For the Full Effect to Take Place.");
cm.dispose();
}
}
}
Sorry the one i Posted was incorrect. It wouldnt set your exp back. But its all fixed now.
Re: [Release] OdinMS rev947 RE-pack Limited Edition