Jump to content

Rizlaaa

Members
  • Posts

    362
  • Credits

  • Joined

  • Last visited

  • Feedback

    0%

Everything posted by Rizlaaa

  1. ε οχι και ολοκληρωμενο βιβλιο , απλες σημειωσεις ειναι και δεν λεει και παρα πολλα πραγματα. ευχαριστω παντως που το μοιραστηκες..
  2. Well , it's quite easy and totally simple to be coded. It's usefull only for faction servers i think or if you edit it you can make it to be usefull for pvp servers too for farming zones. Anyway one friend will open faction server and he requested me a gatekeeper that will teleport players to random spots. So here it is. ### Eclipse Workspace Patch 1.0 #P aVa Tester Index: java/net/sf/l2j/gameserver/clientpackets/RequestBypassToServer.java =================================================================== --- java/net/sf/l2j/gameserver/clientpackets/RequestBypassToServer.java (revision 9) +++ java/net/sf/l2j/gameserver/clientpackets/RequestBypassToServer.java (working copy) @@ -29,10 +29,12 @@ import net.sf.l2j.gameserver.model.L2CharPosition; import net.sf.l2j.gameserver.model.L2Object; import net.sf.l2j.gameserver.model.L2World; +import net.sf.l2j.gameserver.model.actor.instance.L2CustomTeleporterInstance; import net.sf.l2j.gameserver.model.actor.instance.L2NpcInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.entity.L2Event; import net.sf.l2j.gameserver.serverpackets.ActionFailed; +import net.sf.l2j.gameserver.serverpackets.CreatureSay; import net.sf.l2j.gameserver.serverpackets.NpcHtmlMessage; /** @@ -86,6 +88,17 @@ { playerHelp(activeChar, _command.substring(12)); } + else if (_command.startsWith("randomTeleport")) + { + int[] randomLocations = L2CustomTeleporterInstance.getRandomArray(); + + int coordinateX = randomLocations[0]; + int coordinateY = randomLocations[1]; + int coordinateZ = randomLocations[2]; + + activeChar.sendPacket(new CreatureSay(0,Say2.PARTY,"Clarissa","You teleported in a random spawn.")); + activeChar.teleToLocation(coordinateX, coordinateY, coordinateZ); + } else if (_command.startsWith("npc_")) { if(!activeChar.validateBypass(_command)) Index: java/net/sf/l2j/gameserver/model/actor/instance/L2CustomTeleporterInstance.java =================================================================== --- java/net/sf/l2j/gameserver/model/actor/instance/L2CustomTeleporterInstance.java (revision 0) +++ java/net/sf/l2j/gameserver/model/actor/instance/L2CustomTeleporterInstance.java (revision 0) @@ -0,0 +1,61 @@ + +package net.sf.l2j.gameserver.model.actor.instance; + +import javolution.text.TextBuilder; + +import net.sf.l2j.gameserver.serverpackets.NpcHtmlMessage; +import net.sf.l2j.gameserver.templates.L2NpcTemplate; +import net.sf.l2j.util.Rnd; + +/** + * This class created for l2j aVatar and it handles + * a custom gatekeeper that allows players to teleport + * in random locations every time. + * + *@author Iratus + */ +public class L2CustomTeleporterInstance extends L2NpcInstance +{ + + private static final int[][] CUSTOM_LOCATIONS = + { + {60580,-93972,-1351}, + {109060,-128655,-3084}, + {-69904,116410,-3519}, + {-85170,105725,-3585}, + {81198,75743,03377} + }; + + public static int[] getRandomArray() + { + return CUSTOM_LOCATIONS[Rnd.get(CUSTOM_LOCATIONS.length)]; + } + + public L2CustomTeleporterInstance(int objectId, L2NpcTemplate template) + { + super(objectId, template); + } + + @Override + public void showChatWindow(L2PcInstance player , int val) + { + if(player == null) return; + + TextBuilder tb = new TextBuilder(); + NpcHtmlMessage html = new NpcHtmlMessage(this.getObjectId()); + + tb.append("<html><head>"); + tb.append("<title> Random Gatekeeper </title>"); + tb.append("</head><body>"); + tb.append("<center>"); + tb.append("Welcome visitor <font color=\"F7FE2E\">"+player.getName()+"</font><br>"); + tb.append("<font color=\"088A85\">Press the magic button to teleport into a random spawn</font><br>"); + tb.append("<button value=\"Teleport Me\" action=\"bypass -h randomTeleport\" width=68 height=15 back=\"sek.cbui94\" fore=\"sek.cbui92\">"); + tb.append("</center>"); + tb.append("</body></html>"); + + html.setHtml(tb.toString()); + player.sendPacket(html); + } + +}
  3. Client will be gracia final? For sure you need to make all things as better as you can : olympiad , gameplay , all..
  4. theoreis low rate server enan 90x? anyway +1 se auto pou eipe o fanky
  5. lol hercules ti me thimises pwww..........
  6. Thanks for your suggestions.We have already those features actually , we need some unique ideas for unique mods ;D
  7. Hello all, This summer we will launch a new Interlude pvp hight rate server and we need more included your ideas. We have made some unique features but we need more.I want from you to tell us what would you like to see in a hight rate pvp interlude server and suggest us some ideas like unique mods,ideas and everything.That's all for now , I wait for some comments to help us , thanks you. Waiting..
  8. to sigekrimeno ine xirotera me java giati tha checkarei gia kathe mob pou troei o pektis to sigekrimeno drop. episis den epivarinete katholou ma katholou i vasi dedomenon giati apla einai mono 1 connection :D /* * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * 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 General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see <http://www.gnu.org/licenses/>. */ package net.sf.l2j.gameserver.handler.admincommandhandlers; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.SQLException; import java.util.StringTokenizer; import net.sf.l2j.L2DatabaseFactory; import net.sf.l2j.gameserver.handler.IAdminCommandHandler; import net.sf.l2j.gameserver.model.L2Object; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2MonsterInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; /** * @author irat * */ public class AdminAllDrop implements IAdminCommandHandler { private String[] command = {"admin_all_drop"}; private boolean canContinue(int a, int b, int g, int d , int e, int z){ if(a == 0 || b == 0 || g == 0 || d == 0 || e == 0 || z ==0) return false; return true; } public boolean useAdminCommand(String command, L2PcInstance activeChar) { if(activeChar == null) return false; if(command.startsWith("admin_all_drop")) { //type : mobId itemId chance min max category int mobId , itemId , chance , min , max , category; StringTokenizer st = new StringTokenizer(command); if(!st.hasMoreTokens()){ activeChar.sendMessage("nothing happened"); return false; } mobId = Integer.parseInt(st.nextToken()); itemId = Integer.parseInt(st.nextToken()); chance = Integer.parseInt(st.nextToken()); min = Integer.parseInt(st.nextToken()); max = Integer.parseInt(st.nextToken()); category = Integer.parseInt(st.nextToken()); if(canContinue(mobId,itemId,chance,min,max,category)) { Connection con = null; PreparedStatement state = null; try { con = L2DatabaseFactory.getInstance().getConnection(); state = con.prepareStatement("UPDATE droplist SET mobId = ?, itemId = ?, min = ?, max = ?, category = ?, chance = ? "); state.setInt(1, mobId); state.setInt(2, itemId); state.setInt(3, chance); state.setInt(4, min); state.setInt(5, max); state.setInt(6, category); state.execute(); state.close(); for(L2Object monster : L2World.getInstance().getAllVisibleObjects()){ if(monster != null && monster instanceof L2MonsterInstance){ monster.decayMe(); monster.spawnMe(); } } } catch(Exception ie){ ie.printStackTrace(); } finally{ try { con.close(); } catch (SQLException e) { } } } else{ activeChar.sendMessage("something not loaded"); return false; } } return true; } public String[] getAdminCommandList() { return command; } } //all_drop mobId itemId chance min max category
  9. He created , mine is so crappy. So unique and clean coded, GL man ;) Don't low prize, it's unique.
  10. Πέστο :P. Romeo για την ασκηση μιλαει.
  11. τι αλλο θα δουμε... Fanky μη το λες απο τι στιγμη που εχει xxx section μονο gaming forum δεν ειναι.
  12. and i catch my dick [lol]
  13. Οσο καιρο ασχολουμαι ποτε δεν εχω περασει Patch πατωντας apply patch , παντα το περνουσα χειροκινητα , δεν ειναι καθολου προβλημα αυτο. Οσο για το adaption , απλα αλλαξε τα Imports στα Imports που χρησιμοποιει το Frozen. com.l2jfrozen αν θυμαμαι καλα.
  14. Σε αυτον τον οδηγο οπως ειπα θα μιλησουμε για: Συγκρισεις Λιστες Προτασεις if,else if, else Προτασεις switch Συγκρισεις Για να καταλαβετε εδω θα σας κανω μερικα παραδειγματα.Να ξερετε οτι οι συγκρισεις επιστρεφουν λογικες τιμες true η false και ειναι λογικο αυτο. boolean j = 5 > 4; //epistrefei TRUE giati to 5 einai megalitero tou 4 int maxtor = 100; int finito = 100; boolean n = finito <= maxtor; //epistrefei true gt to 100 den ine mikrotero ala ine iso to 100 :P int c = maxtor/finito; //epistrefei 1, kanoyme 100/100 boolean f = c > (finito-98); //epistrefei false gt 1 < 2 Προτασεις if,else if , else Απο εδω αρχιζουν τα ωραια πραγματα. Ενα απο τα βασικα στοιχεια ειναι ο τροπος με τον οποιο ενα προγραμμα εχει την δυνατοτητα να λαμβανει αποφασεις. Αποφασεις παιρνουμε και εμεις στην καθημερινη μας ζωη αφου πρωτα σκεφτουμε διαφορες εκδοχες , τα παρακατω ειναι μερικα παραδειγματα. Αν εχει καλο καιρο θα παω για μπαλα. Αν ο maxtor ειναι τσοντακιας θα βαλει porn section. Αν διαβασω θα γραψω καλα Ετσι και στην Java μπορουμε να χρησιμοποιησουμε προτασεις ωστε να ελεγξουμε το προγραμμα μας.Εδω θα μιλησουμε για το if , το else if και το else. if = αν , else if = αλλιως εαν , else = αλλιως. Ο τροπος με τον οποιο χρησιμοποιουμε το if ειναι καπως ετσι: if(true) { //kane oti exei mesa sta blocks } Για παραδειγμα: if(50>20) { System.out.println("50 > 20"); } Ειναι απλο. Με τον ιδιο τροπο χρησιμοποιουμε και τα else if, else και οπως εχω ξανα πει με παραδειγματα μαθενετε καλυτερα γι αυτο κατω θα δουμε ενα ολοκληρωμενο προγραμμα που τα εχει ολα. class Maxcheaters{ public static void main(String[] args) { int x = 20; if(x > 20) //an to x > 20 pou den isxuei { System.out.println(x+" is bigger than 20"); //print auto } else if(x < 20) //an to x < 20 pou pali den isxuei { System.out.println(x+" is smaller than 20"); //print auto } else{ //alios , dld emine mia ekdoxi tora mono x = 2 System.out.println(x+" equals 20"); //print auto } } } Καπως ετσι χρησιμοποιειται. Επισης τα if μπορουν να ειναι και μεσα σε αλλα if για πιο συγεκριμενα πραγματα , θα καταλαβετε τι εννοω με αυτο το παραδειγμα και με τα σχολια: class Maxcheaters{ public static void main(String[] args) { int x = 20; if(x > 10) //isxuei giati ine megalitero tou 10 ara proxoraei parakatw. { if(x == 19) //den isxuei giati to x = 20 ara de tha print to minima parakatw. { System.out.println("troll face"); } else //edw omos isxuei gt ennoei oti an to x den ine 19 to opoio kai isxuei, ara tha ektelesei to minima parakatw { System.out.println("troll face 2 "); //ekteleite giati isxuei } } } } Προτασεις switch Μια πρακτικη στον προγραμματισμο ειναι το να συγκρινουμε μεταβλητες με μια τιμη. Αυτο ομως ειναι κουραστικο ομως μονο εαν χρησιμοποιουμαι προτασεις if αναλογα και με το πληθος των τιμων που θελουμε να ελεγξουμε.Εδω ενα παραδειγμα κουραστικο με την χρηση του if. char vathmos = 'a'; if(vathmos == 'a') System.out.println("Aristos"); else if(vathmos == 'b') System.out.println("metrios"); else if(vathmos == 'c') System.out.println("gtp"); else if(vathmos == 'd') System.out.println("dianoitika kathisterimenos"); Ειδατε πως ειναι κουραστικο. Εδω να πω πως αν εχουμε κατω απο τις προτασεις if μονο μια εντολη οπως εδω , δεν χρειαζεται να βαλουμε τα { } . Στην java μπορουμε να ομαδοποιησουμε ενεργειες χρησιμοποιωντας την προταση switch. Εδω ειναι ενα παραδειγμα για να δειτε πως ειναι καλυτερο το switch σε τετοιο ειδος προτασεων. char vathmos = 'a'; switch(vathmos) { case 'a': System.out.println("aristos"); break; case 'b': System.out.println("metrios"); break; case 'c': System.out.println("axristos"); break; case 'd': System.out.println("koimismenos"); break; default: System.out.println("skoupidiaris."); } Το default σημαινει αν δεν ειναι καμια απο αυτες τι να κανει. Και το break; πρεπει να μπαινει στα cases για να σημαινει οτι τελειωνει απο το case, αν δεν το βαλετε πολυ πιθανο το προγραμμα σας να τρεξει οπως ναναι. Και τωρα ενα προγραμμα που τα εχει ολα μεσα για να τα καταλαβετε καλα. class Maxcheaters{ public static void main(String[] args){ int olympiakos = 3; int panathinaikos = 2; int olympiakosWin = 0; // 1 simenei nikise, 0 simenei exase boolean isopalia; if(olympiakos > panathinaikos) //isxuei olympiakosWin = 1; else if(olympiakos < panathinaikos) olympiakosWin = 0; else isopalia = true; if(isopalia == false) //an den ine isopalia { switch(olympiakosWin) //xrisimopoiw switch gia na dw an o olympiakos exe nikisei i exei xasei { case 1: //isxuei o olympiakos nikise System.out.println("Olympiakos Won panathinaikos"); break; case 2: System.out.println("Olympiakos Lost from panathinaikos"); break; default: ; //den kanei tipota } } } } Στον επομενο οδηγο θα δουμε: Βροχοι for Bροχοι while, do while continue , break Ασκηση: 1)Βρειτε το ΛΑΘΟΣ στο παρακατω παραδειγμα: int portokalia = 12; switch portokalia { case 12: System.out.println("to petixa"); break; default: ; //tipota. } 2)Καντε ελευθερη εξασκηση με τα if,else if,else , χρησιμοποιειστε if μεσα σε αλλα if και γενικα καντε εξασκηση , ειναι το παν.
  15. Good luck. Chest Event - > Give a description? :P
  16. ευχαριστω παιδια , αυριο ερχεται το tutorial 3. Παντως να ξερετε θα φτασουμε αρκετα βαθια αν ολα πανε καλα (swing,databases connections , συνδεση με το Internet) και δω ανταποκριση.
  17. Σε αυτον τον οδηγο οπως ειπα στο παρτ 1 (I) θα δουμε: Τυποι κλασεων Σταθερες Σχολια Κυριολεκτικα(Αριθμητικα,λογικα,Strings) Πραξεις με αριθμους Τυποι Κλασεων Μια μεταβλητη εκτος απο τους βασικους τυπους δεδομενουν μπορει να εχει σαν τυπο μια κλαση , τα παρακατω ειναι μερικα παραδειγματα. String firstName = "Giorgos"; Person fanky; Animal absolutePower; Μην μπερδευτειτε ομως προς το παρων γιατι θα τα εξηγησουμε αργοτερα αυτα αναλυτικοτατα. Προς το παρον κρατηστε το πρωτο, το String firstName = "Giorgos"; Η κλαση String σας επιτρεπει να δημιουργειτε μεταβλητες οι οποιες αποτελουνται απο κειμενο , οπως βλεπετε και ειναι παρα πολυ συχνη , θα την βλεπετε παρα πολυ συχνα. Εδω ειναι ενα παραδειγμα της κλασης String με την οποια δημιουργουμε μεταβλητες και τις κανουμε print στην οθονη. class Maxcheaters{ public static void main(String[] args){ String onoma = "Giorgos"; String epitheto = "Siga min pw to epitheto mou sto maxcheaters"; String pseutikoEpitheto = "Masampoukas"; System.out.println(onoma); System.out.println(epitheto); System.out.println(onoma + " " + pseutikoEpitheto); } } System.out.println(onoma + " " + pseutikoEpitheto); Εδω στην ουσια προσθετουμε τα Strings kai to " " αφηνει κενο για να φανει καλα.Aρα εδω θα εμφανισει Giorgos Masampoukas. Σταθερες Θα το εξηγησω απλα :P . Οι μεταβλητες μπορουν να αλλαζουν κατα τη διαρκεια του προγραμματος , δηλαδη: int x = 25; x = x + 75; Εδω αλλαξαμε το x , τωρα ειναι 100. Για να κανουμε σταθερη μια μεταβλητη δηλαδη να μην γινει να αλλαξει κατα την διαρκεια του προγραμματος χρησιμοποιουμε τη λεξη final. final boolean MAXCHEATERS_SUCK = false; Συνηθως στις σταθερες χρησιμοποιουμε κεφαλαια για να ξεχωριζουν. Αν προσπαθησετε να αλλαξετε τωρα την μεταβλητη MAXCHEATERS_SUCK θα εχετε error. Σχολια Τα σχολια το λεει και η λεξη ειναι ενας απο τους καλυτερους τροπους να βελτιωσουμε την αναγνωσιμοτητα των προγραμματων μας. Τα σχολια δεν τα βλεπει ο μεταγλωττιστης , ειναι καθαρα για να πληροφορουν εσας τους ιδιους η αλλους τι κανει το προγραμμα και γενικα οτι σχολια θελετε. Ο πρωτος τροπος για να βαλετε σχολεια ειναι να τα βαλετε σε μια σειρα και γινται καπως ετσι System.out.println("O Maxtor einai admin"); //print a message Βαζοντας // δηλαδη. Και ο δευτερος τροπος ειναι να βαζετε σχολια σε πολλες σειρες ετσι /*Auto to programma stelnei ena minima stin othoni kai epeita dhmioyrgei ena String kai to pros8etei me ena alo */ System.out.println("blabllabla"); String blabla... ...... Κυριολεκτικα Ενα κυριολεκτικο ειναι οποιοσδηποτε αριθμος , κειμενο , η οτιδηποτε πληροφορια η οποοια αντιπροσωπευει αμεσα μια τιμη. Π.χ int year = 2012; Το 2012 ειναι το κυριολεκτικο. Αριθμητικα Κυριολεκτικα: Ειναι αριθμοι, το μονο που θα κανω εδω ειναι να κανω 4-5 παραδειγματα. int f = 25; int fPlusTwo = f + 2; final int eggs = 2; long time = 38283245; Δεν νομιζω να υπαρχει κατι που να μην καταλαβενετε απο αυτα τα κυριολεκτικα. Λογικα Κυριολεκτικα: Ειναι η true η false και εδω δε μπορω να πω τιποτα παραπανω , θα κανω απλα 2 παραδειγματα και εδω. boolean y = false; final boolean x = true; //den allazei Σημειωστε οτι τα true,false δεν μπενουν σε "" ουτε σε ''. Πραξεις με αριθμους Αφου δειτε τον πινακα καταλαβαινετε τα συμβολα , ειναι πολυ απλα. Θα σας κανω ενα προγραμμα στο οποοιο θα κανουμε μερικες πραξεις και μετα θα τις εκτυπωσουμε στην οθονη. class Maxcheaters{ public static void main(String[] args){ int x = 25; int y = 15; int z = x*y; int k = x+y; int complex = (k + z) / 2; int finalComplex = complex % y; System.out.println(z); System.out.println(k); System.out.println(complex); System.out.println(finalComplex); } } Τρεξτε το προγραμμα, πριν το τρεξετε προσπαθειστε να καταλαβετε απο πριν τι θα γραψει στην οθονη, αν το καταλαβατε ειστε GG. Πιστευω οτι απο παραδειγμα μαθενεις πιο καλα, αν δεν καταλαβετε κατι ρωτηστε να σας λυσω την απορια. Κατι τελευταιο: int c = 1; c++; int y = 2; y--; Το ++ σημαινει οτι η μεταβλητη αυξανεται κατα ενα αρα στο παραδειγμα μας γινεται το c 2 , ενω το -- σημαινει οτι μειωνετε κατα 1 αρα το y γινεται 1. Πρεπει να το ξερετε αυτο. Στον επομενο οδηγο θα δουμε: Συγκρισεις Λιστες Προτασεις if,else if, else , switch Ασκησεις: 1)Καντε ελευθερη εξασκηση στις αριθμητικες πραξεις , σιγα σιγα οσο πιο δυσκολες μπορειτε , οσο πιο περιπλοκες. 2)Ο Γιάννης είχε στον κουμπαρά του 10 ευρώ. Ο πατέρας του έδωσε άλλα 20 ευρώ για τη γιορτή του. Με τα χρήματα που συγκέντρωσε ο Γιάννης αγόρασε 2 μπλοκ ζωγραφικής με 3 ευρώ το ένα, 1 λογοτεχνικό βιβλίο με 15 ευρώ και δύο μολύβια με 1,5 ευρώ το καθένα. Πόσα χρήματα του έμειναν στον κουμπαρά; Πραγματικα γελασα χαχ αλλα λυστε το με πραξεις σε Java, το να λυνετε προβληματα ειναι οτι καλυτερο.
  18. Ευχαριστω , το παρτ 2 (II) μπορει να το κανω και σημερα γιατι εχω αρκετο χρονο.
  19. Λιγα λογια για την σειρα των tutorials Καταρχας θα σας πω να εχετε υπομονη γιατι στην αρχη τα πραγματα θα ειναι απλα και ισως ξενερωσετε αλλα αργοτερα θα δουμε πιο ωραια πραγματα οπως Swing , δηλαδη γραφικο περιβαλλον , δηλαδη θα μαθουμε να κατασκευαζουνε προγραμματα με γραφικα οπως τα περισσοτερα προγραμματα στις μερες μας.Επισης θα σας συνιστουσα να κανετε τις ασκησεις που θα σας βαζω στο τελος αν ειστε newbies ωστε να τα εμπεδωνετε. Τι θα δουμε σε αυτον τον οδηγο Σε αυτον τον οδηγο θα πουμε μερικα λογια για τις μεταβλητες , πως δημιουργουμε μεταβλητες και τα σχετικα.Επισης θα εξετασουμε τι ειναι οι προτασεις και τι οι εκφρασεις στην Java, θα μαθουμε τους τυπους δεδομενων και την ονομασια τον μεταβλητων. Προτασεις Μια προταση η αλλιως statement ειναι απλα μια εντολη η οποια προκαλει κατι να συμβει.Η προτασεις στην java πρεπει να τελειωνουν με το συμβολο ( ; ).Εδω ειναι μερικα παραδειγματα απλων προτασεων. int i = 0; double PI = 3.14; boolean maxCheatersHasPornSection = true; char y = 'c'; Ολα αυτα ειναι παραδειγματων απλων προτασεων στην Java. Εκφρασεις Μια εκφραση η αλλιως expression ειναι μια προταση η οποια "παραγει μια τιμη". Η τιμη αυτη μπορει να χρησιμοποιειται αμεσα στο προγραμμα η να αποθηκευεται για να χρησιμοποιηθει στο μελλον η να μην χρησιμοποιειται καθολου. Επισης ι τιμη που "παραγεται" απο μια προταση την λεμε επιστρεφομενη τιμη ( return value ). Καποιες εκφρασεις παραγουν αριθμιτικες επιστρεφομενες τιμες , π.χ οπως οταν πολλαπλασιαζουμε δυο αριθμους και καποιες αλλες μια λογικη τιμη (true η false). Επισης υπαρχουν και εκφρασεις που παραγουν αντικειμενα της Java , αυτο βεβαια θα το πουμε πολυ αργοτερα. Ενα βασικο πραγμα που πρεπει να ξερετε ειναι οτι στην Java δεν παιζουν ρολο τα κενα ουτε οι αδειες σειρες. Για να καταλαβεται τι εννοω : int members = 100; int playboy = 20; και int members = 100; int playboy = 20; Ειναι ακριβως το ιδιο πραγμα. Βεβαια κοιταμε παντα να κανουμε τον κωδικα μας ευκολο στην αναγνωση , οσο πιο ευαναγνωστος τοσο το καλυτερο. Ειδη Μεταβλητων Υπαρχουνε 3 ηδη. [*]Μεταβλητες Υποστασης [*]Μεταβλητες Κλασης [*]Τοπικες Μεταβλητες Οι μεταβλητες υποστασης η αλλιως instance variables χρησιμοποιουνται για τον ιρισμο των ιδιοτητων ενως αντικειμενου. Οι μεταβλητες κλασης η αλλιως class variables οριζουν τις ιδιοτητες μιας ολοκληρης κλασης και ισχυουν για ολα τα αντικειμενα και απαιτουν την λεξη static στην δημιουργια τους. Οι τοπικες μεταβλητες η αλλιως local variables χρησιμοποιουνται μεσα σε μεθοδους η σε μπλοκ ( {} ) προτασεων μεσα σε μια μεθοδο. Απο το σημειο που η μεθοδος τελειωνει την εκτελεση , η μεταβλητη παυει να υπαρχει. class Maxcheaters{ int metablitiIpostasis = 25; static int metablitiKlasis = 100; void methodos(){ int metavlitiTopiki = 12; System.out.println(metavlitiTopiki); } public static void main(String[] args) { System.out.println("To prwto programma"); } } Αυτο ηταν ενα παραδειγμα που περιεχει καθε ειδος μεταβλητης.Ειπα να μην το αρχισω απο το γνωστο σε ολους hello world application. Οταν θελουμε να δημιουργησουμε μια κλαση χρησιμοποιουμε την λεξη class και μετα βαζουμε το ονομα.Επισης οτι ονομα εχει η κλαση τετοιο ονομα πρεπει να εχει και το .java αρχειο που δημιουργησαμε, βεβαια υπαρχουν εξαιρεσεις θα τις δουμε πολυ αργοτερα. Προς το παρον αυτο να ξερετε. void methodos() {} αυτο ειναι μια μεθοδος για τις οποιες θα μιλησουμε αργοτερα. Τωρα δωστε σημασια στην κυρια μας μεθοδο main που εκει μεσα εκτελειται στην ουσια το προγραμμα.Δηλαδη εκει θα βαζετε τον κυριο κωδικα σας , εκει διαβαζει το μηχανημα τι να κανει . public static void main(String[] args){ } . Ειναι αναγκαστικη και εκει μεσα τρεχει στην ουσια το προγραμμα μας. Η προταση System.out.println(""); , οπως θα δειτε αν εκτελεσετε το προγραμμα κανει print το μυνημα μεσα στα "" στην οθονη μας , δηλαδη η προταση System.out.println("I hate maxcheaters but i love it too."); θα κανει print την προταση I hate maxcheaters but i love it too. Τυποι Δεδομενων Δημιουργια Μεταβλητων Πολυ απλο, η δημιουργια μεταβλητων γινεται με των εξης τροπο: Πρωτα γραφουμε τον τυπο πληροφοριων που θα αποθηκευει(βλεπε πινακα παραπανω) και μετα το ονομα. Π.χ boolean loading = false; int balls = 25; double ipsos = 1.50; Αν εχετε μεταβλητες του που αποηθκευουν το ιδιο τυπο δεδομενων μπορειτε να το κανετε ως εξεις: int varos , killa ; boolean kontos , xontros; Επισης μπορειτε να δημιουργειτε μεταβλητες και να τις εκχωρειτε αμεσως τιμες π.χ boolean gameOver = false; int potiria = 500; int y = 1; int zipCode = 50100; Και αν ειναι του ιδιου τυπου int piata = 200, pirounia = 100 , aggouria = 340; double ipsos = 1.65 , platos = 2.25; Κατι που ειναι καλο να ξερετε ειναι οτι στους ορισμουν μεταβλητων υποστασης και κλασης δινεται αυτοματα μια αρχικη(default) τιμη αναλογα και με τον τυπο δεδομενων τους. Αριθμητικες Μεταβλητες: 0 Χαρακτηρες:'\0' Λογικες Τιμες: false Αντικειμενα: Null Ονομασια μεταβλητων Καλο ειναι να ακολουθειτε την ονομασια μεταβλητων αν και δεν ειναι αναγκαστικο, ειναι ομως καλο γιατι κανει τον κωδικο ευκολο στην αναγνωση. Πρεπει να ξεκινουν με ενα γραμμα , εναν χαρακτηρα κατω παυλας(_) η ενα συμβολο του δολαριου($) , δεν γινεται να ξεκιναν με αριθμο Το πρωτο γραμμα του ονοματος της μεταβλητης ειναι πεζο Καθε επομενη λεξη ξεκινα με κεφαλαιο γραμμα Ολα τα αλλα γραμματα καθε λεξης ειναι πεζα Τα παρακατω ακολουθουν τον κανονα αυτο: int zipCode = 20; char hackButton = 'e'; boolean isMaxcheatersMember = false; Αλλα τα παρακατω οχι ... int zipcode = 15; int QuitGame = 12; boolean eXitGamE = false; Ειμαι σιγουρος οτι δεν τα καταλαβατε ολα αλλα να ειστε σιγουροι οτι στα επομενα tutorials θα καταλαβετε τα παντα. Για οτιδηποτε δεν καταλαβατε στειλτε μου PM και θα σας απαντησω οταν το δω.Επισης καλο ειναι να τα δειτε αυτα και θεωρητικα να τα ξερετε ειναι καλα , πιο μετα θα τα εμπεδωσετε κιολας. Στον επομενο οδηγο θα δουμε: Τυποι κλασεων Σταθερες Σχολια Κυριολεκτικα(Αριθμητικα,λογικα,Strings) Πραξεις με αριθμους Ασκησεις: 1)Γραψτε μια κλαση που θα εχει 4 κλασης και 2 μεταβλητες υποστασης. Επισης χρησιμοποιειστε τη μεθοδο main η οποια θα εμφανιζει στην οθονη τα μυνηματα: I Hate maxcheaters. I love maxcheaters. 2)Ποιες απο τις παρακατω μεταβλητες ΔΕΝ ακολουθουν τον κανονα ονομασιας? 1) boolean canStart = false; 2) int waitSeconds = 25; 3) int 2people = 9; 4) int canHeal = 1; 5) char $j = 's'; 6) int Totalpayment = 200; 7) double mathsForEveR = 3.14; 8) short canPlay = 99; 9) byte DayOfWeek = 6; 10) byte favouriteNumber = 12;
  20. Ανοιγει μονη της αποτι θυμαμαι.
  21. Awesome coding bro , you forgot the Config.java :P
×
×
  • Create New...