שלום 
אני יפרסם לכם מדריך שמשהו אחר עשה
אבל אני תקנתי את הבעיות שהיו לו
אז נתחיל
ה" Iatrafpoints " שיש כאן אתם יכולים לשנות את זה לשם הנקודות שלכם כמו:
לדוגמה.
FinlandiaPoints
אוקיי נתחיל:
תעשו כפתור ימני על Accounts ואז תלחצו על Edit Table
יופיע לכם חלון כזה:

תרדו עד למטה כמו בתמונה ובריבועים הריקים תוסיפו ככה:
בריבוע הראשון תכתבו את שם המערכת שלכם לדוגמא:
Iatrafpoints
בריבוע השני תכתבו:
ואז תעשו לפי התמונה:

שמרו את זה, וזהו סיימתם עם הSQL
עכשיו פתחו את התוכנה NetBeans
וכנסו לMapleCharacter.java
שנמצא ב net\sf\odinms\client
תוסיפו:
קוד PHP:
private int iatrafpoints;
מתחת ל:
קוד PHP:
private int ci = 0;
חפשו:
קוד:
קוד PHP:
rs = ps.executeQuery();
while (rs.next()) {
ret.getClient().setAccountName(rs.getString("name"));
ret.paypalnx = rs.getInt("paypalNX");
ret.maplepoints = rs.getInt("mPoints");
ret.cardnx = rs.getInt("cardNX");
}
החליפו ב:
קוד:
קוד PHP:
rs = ps.executeQuery();
while (rs.next()) {
ret.getClient().setAccountName(rs.getString("name"));
ret.paypalnx = rs.getInt("paypalNX");
ret.maplepoints = rs.getInt("mPoints");
ret.cardnx = rs.getInt("cardNX");
ret.iatrafpoints = rs.getInt("iatrafpoints");
}
חפשו והחליפו את זה:
קוד:
קוד PHP:
ps = con.prepareStatement("UPDATE accounts SET `paypalNX` = ?, `mPoints` = ?, `cardNX` = ? WHERE id = ?");
ps.setInt(1, paypalnx);
ps.setInt(2, maplepoints);
ps.setInt(3, cardnx);
ps.setInt(4, client.getAccID());
בזה:
קוד PHP:
ps = con.prepareStatement("UPDATE accounts SET `paypalNX` = ?, `mPoints` = ?, `cardNX` = ?, `iatrafpoints` = ? WHERE id = ?");
ps.setInt(1, paypalnx);
ps.setInt(2, maplepoints);
ps.setInt(3, cardnx);
ps.setInt(4, iatrafpoints);
ps.setInt(5, client.getAccID());
תוסיפו:
קוד PHP:
public void setiatrafpoints(int newpoints) {
this.iatrafpoints = newpoint;
}
public void gain1iatrafpoint() {
this.iatrafpoints++;
}
public void gainiatrafpoints(int gainedpoints) {
this.iatrafpoints += gainedpoints;
}
public int getiatrafpoints() {
return iatrafpoints;
}
הערה חשובה מאוד:
אם אתם משתמשים בשם אחר למערכת נקודות שלכם כמו FinlandiaPoints
אז במקום getiatrafpoints תחליפו לgetFinlandiapoints
זה כולל גם את gain1iatrafpoint וכל השאר, בקיצור את המילה iatrafpoints תחליפו לשם שלכם.
מתחת ל:
קוד PHP:
public void setMarried(int m) {
this.married = m;
}
עכשיו תפתחו את NPCConversationmanager.java שנמצא ב:
src\scripting\npc
תוסיפו:
קוד PHP:
public int getiatrafpoints() {
return getPlayer().getiatrafpoints();
}
public void setiatrafpoints(int newpoints) {
getPlayer().setiatrafpoints(newpoints);
}
public void gainiatrafpoint1() {
getPlayer().gain1iatrafpoint();
}
public void gainiatrafpoints(int gainedpoints) {
getPlayer().gainiatrafpoints(gainedpoints);
getPlayer().saveToDB(true, true); // No more stupid rollbacks ;) ~Deagan
if (gainedpoints > 0) {
getPlayer().dropMessag("Hi " + getPlayer().getName() + ",");
getPlayer().dropMessag("You have achieved : " + gainedpoints + " iatrafPoint(s),");
getPlayer().dropMessag("Which brings you to a total of : " + getPlayer().getiatrafpoints() + " iatrafPoints~");
}
else {
getPlayer().dropMessag("Hi " + getPlayer().getName() + ",");
getPlayer().dropMessag("You have lost : " + gainedpoints + " iatrafPoints,");
getPlayer().dropMessag("Which brings you to a total of : " + getPlayer().getiatrafpoints() + " iatrafPoints~");
}
}
מתחת ל:
קוד:
קוד PHP:
public void gainMeso(int gain) {
getPlayer().gainMeso(gain, true, false, true);
}
ואני חוזר על עצמי,אם אתם רוצים שם אחר למערכת נקודות אז איפה שכתוב iatrafpoints כולל getiatrafpoints וכו,
תשנו לשם שלכם, אם תשנו חלק, זה פשוט לא יעבוד.
דוגמה:
קוד PHP:
setiatrafpoints(int newpoints) {
getPlayer().setiatrafpoints(newpoints);
לשנות ל:
קוד PHP:
setFinlandiapoints(int newpoints) {
getPlayer().setFinlandiapoints(newpoints);
הפקודות לNPC:
קוד PHP:
cm.getiatrafpoints(); // Shows you how much iatrafpoints you have.
cm.setiatrafpoints(1000); // Sets your iatrafpoints to 1000, directly into MySQL
cm.gainiatrafpoints(100); // Adds or removes 100 iatrafpoints on top of what's already in MySQL
cm.gainiatrafpoint1(); // Adds 1 iatrafpoint on top of what's already in MySQL
פקודה לשחקן שבודקת כמה נקודות יש לכם:
קוד PHP:
} else if (splitted[0].equals("@checkiatrafpoints")) {
player.message("Hello " + c.getPlayer().getName() + ", you currently have : " + c.getPlayer().getiatrafpoints() + " iatrafpoints~");
קרדיט לChoDes_BmxBiker על התרגום
Deagen מפורום אחר על המדריך
ולי על התיקונים