📄 j_main.java
字号:
TA_Clan.setEditable(false); TA_Clan.setForeground(new java.awt.Color(153, 51, 0)); TA_Clan.setRows(5); TA_Clan.setEnabled(false); SP_Clan.setViewportView(TA_Clan); TP.addTab("血盟", SP_Clan); SP_Team.setAutoscrolls(true); TA_Team.setColumns(20); TA_Team.setEditable(false); TA_Team.setForeground(new java.awt.Color(102, 0, 102)); TA_Team.setRows(5); TA_Team.setEnabled(false); SP_Team.setViewportView(TA_Team); TP.addTab("組隊", SP_Team); SP_Split.setLeftComponent(TP); T_Player.addMouseListener(new java.awt.event.MouseAdapter() { public void mousePressed(java.awt.event.MouseEvent evt) { T_PlayerMousePressed(evt); } public void mouseReleased(java.awt.event.MouseEvent evt) { T_PlayerMouseReleased(evt); } }); SP_player.setViewportView(T_Player); SP_Split.setRightComponent(SP_player); getContentPane().add(SP_Split, java.awt.BorderLayout.CENTER); M_File.setMnemonic('F'); M_File.setText("檔案(F)"); MB.add(M_File); M_Edit.setMnemonic('E'); M_Edit.setText("編輯(E)"); MB.add(M_Edit); setJMenuBar(MB); pack(); }// </editor-fold>//GEN-END:initComponents private void T_PlayerMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_T_PlayerMouseReleased int mod = evt.getButton(); if(evt.getClickCount()==2 && mod==MouseEvent.BUTTON1){ select = T_Player.getSelectedRow(); setPlayerView((String)DTM.getValueAt(select, 1)); F_Player.pack(); F_Player.setVisible(true); } if(evt.isPopupTrigger()){ select = T_Player.getSelectedRow(); PM_Player.show(T_Player, evt.getX(), evt.getY()); } }//GEN-LAST:event_T_PlayerMouseReleased private void formWindowClosed(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_formWindowClosed tray.remove(trayIcon); GameServer.getInstance().shutdown(); System.exit(0); }//GEN-LAST:event_formWindowClosed private void T_PlayerMousePressed(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_T_PlayerMousePressed processEvent(evt); }//GEN-LAST:event_T_PlayerMousePressed private void setPlayerView(String name){ L1PcInstance pc = L1PcInstance.load(name); int job =0; switch(pc.getClassId()){ case L1PcInstance.CLASSID_PRINCE: job=715; break; case L1PcInstance.CLASSID_PRINCESS: job=647; break; case L1PcInstance.CLASSID_KNIGHT_MALE: job=384; break; case L1PcInstance.CLASSID_KNIGHT_FEMALE: job=317; break; case L1PcInstance.CLASSID_ELF_MALE: job=247; break; case L1PcInstance.CLASSID_ELF_FEMALE: job=198; break; case L1PcInstance.CLASSID_WIZARD_MALE: job=532; break; case L1PcInstance.CLASSID_WIZARD_FEMALE: job=452; break; case L1PcInstance.CLASSID_DARK_ELF_MALE: job=145; break; case L1PcInstance.CLASSID_DARK_ELF_FEMALE: job=25; break; case L1PcInstance.CLASSID_DRAGON_KNIGHT_MALE: job=903; break; case L1PcInstance.CLASSID_DRAGON_KNIGHT_FEMALE: job=930; break; case L1PcInstance.CLASSID_ILLUSIONIST_MALE: job=1029; break; case L1PcInstance.CLASSID_ILLUSIONIST_FEMALE: job=1056; break; } ImageIcon imageIcon = new ImageIcon(getClass(). getResource("img/"+job+".png")); Icon icon = (Icon)imageIcon; L_Image.setIcon(icon); TF_Account.setText(pc.getAccountName()); TF_Name.setText(pc.getName()); TF_Title.setText(pc.getTitle()); TF_AccessLevel.setText(""+pc.getAccessLevel()); TF_Sex.setText((pc.get_sex()==1)?"女":"男"); TF_Ac.setText(pc.getAc()+""); TF_Cha.setText(pc.getCha()+""); TF_Int.setText(pc.getInt()+""); TF_Str.setText(pc.getStr()+""); TF_Con.setText(pc.getCon()+""); TF_Wis.setText(pc.getWis()+""); TF_Dex.setText(pc.getDex()+""); TF_Exp.setText(pc.getExp()+""); TF_Map.setText(pc.getMapId()+""); TF_X.setText(pc.getX()+""); TF_Y.setText(pc.getY()+""); TF_Clan.setText(pc.getClanname()); TF_Level.setText(pc.getLevel()+""); TF_Hp.setText(pc.getCurrentHp()+" / "+pc.getMaxHp()); TF_Mp.setText(pc.getCurrentMp()+" / "+pc.getMaxMp()); } /** * @param args the command line arguments */ public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new J_Main().setVisible(true); } }); } // Variables declaration - do not modify//GEN-BEGIN:variables private javax.swing.JFrame F_Player; private javax.swing.JLabel L_AccessLevel; private javax.swing.JLabel L_AccessLevel7; private javax.swing.JLabel L_Account; private javax.swing.JLabel L_Cha; private javax.swing.JLabel L_Clan; private javax.swing.JLabel L_Con; private javax.swing.JLabel L_Dex; private javax.swing.JLabel L_Exp; private javax.swing.JLabel L_Hp; private javax.swing.JLabel L_Image; private javax.swing.JLabel L_Int; private javax.swing.JLabel L_Leavl; private javax.swing.JLabel L_Map; private javax.swing.JLabel L_Mp; private javax.swing.JLabel L_Mp1; private javax.swing.JLabel L_Name; private javax.swing.JLabel L_Str; private javax.swing.JLabel L_Title; private javax.swing.JLabel L_Wis; private javax.swing.JLabel L_X; private javax.swing.JLabel L_Y; private javax.swing.JMenuBar MB; private javax.swing.JMenuItem MI_BanIP; private javax.swing.JMenuItem MI_Kill; private javax.swing.JMenuItem MI_ShowPlayer; private javax.swing.JMenu M_Edit; private javax.swing.JMenu M_File; private javax.swing.JPopupMenu PM_Player; private javax.swing.JScrollPane SP_; private javax.swing.JScrollPane SP_Clan; private javax.swing.JScrollPane SP_Consol; private javax.swing.JScrollPane SP_Log; private javax.swing.JScrollPane SP_Normal; private javax.swing.JSplitPane SP_Split; private javax.swing.JScrollPane SP_Team; private javax.swing.JScrollPane SP_World; private javax.swing.JScrollPane SP_player; private javax.swing.JTextArea TA_Clan; private javax.swing.JTextArea TA_Consol; private javax.swing.JTextArea TA_Log; private javax.swing.JTextArea TA_Normal; private javax.swing.JTextArea TA_Private; private javax.swing.JTextArea TA_Team; private javax.swing.JTextArea TA_World; private javax.swing.JTextField TF_Ac; private javax.swing.JTextField TF_AccessLevel; private javax.swing.JTextField TF_Account; private javax.swing.JTextField TF_Cha; private javax.swing.JTextField TF_Clan; private javax.swing.JTextField TF_Con; private javax.swing.JTextField TF_Dex; private javax.swing.JTextField TF_Exp; private javax.swing.JTextField TF_Hp; private javax.swing.JTextField TF_Int; private javax.swing.JTextField TF_Level; private javax.swing.JTextField TF_Map; private javax.swing.JTextField TF_Mp; private javax.swing.JTextField TF_Name; private javax.swing.JTextField TF_Sex; private javax.swing.JTextField TF_Str; private javax.swing.JTextField TF_Title; private javax.swing.JTextField TF_Wis; private javax.swing.JTextField TF_X; private javax.swing.JTextField TF_Y; private javax.swing.JTabbedPane TP; private javax.swing.JTable T_Player; private javax.swing.JPanel jPanel1; private javax.swing.JSeparator jSeparator1; // End of variables declaration//GEN-END:variables public void actionPerformed(ActionEvent e) { String command = e.getActionCommand(); if((e.getModifiers()&ActionEvent.MOUSE_EVENT_MASK)==0){ if((e.getModifiers()&MouseEvent.BUTTON3_MASK)!=0 || (e.getModifiers()&MouseEvent.BUTTON2_MASK)!=0) return; } if (command.equals("強制踢除(K)")) { L1PcInstance target = L1World.getInstance().getPlayer((String) DTM.getValueAt(select, 1)); if (target != null) { addConsol((new StringBuilder()) .append("您把玩家:"+(String) DTM.getValueAt(select, 1)+"強制剔除遊戲。") .toString()); target.sendPackets(new S_Disconnect()); } else { addConsol("此玩家不在線上。"); } } else if (command.equals("封鎖IP(B)")) { String ip = (String) DTM.getValueAt(select, 2); IpTable iptable = IpTable.getInstance(); if(iptable.isBannedIp(ip)){//已經是被封鎖IP了 return; } for (L1PcInstance tg : L1World.getInstance().getAllPlayers()) { if (ip.equals(tg.getNetConnection().getIp())) { String msg = new StringBuilder().append("IP:").append(ip) .append(" 連線中的人物:").append(tg.getName()) .append(" 管理員封鎖IP!") .toString(); L1World.getInstance().broadcastServerMessage(msg); } } iptable.banIp(ip); // BANリストへIPを加える String msg = new StringBuilder().append("IP:").append(ip) .append(" 登錄BAN IP了。").toString(); addConsol(msg); // perform copy operation } else if (command.equals("玩家資料(P)")) { setPlayerView((String)DTM.getValueAt(select, 1)); F_Player.pack(); F_Player.setVisible(true); // perform paste operation } } private void processEvent(MouseEvent e) { if ((e.getModifiers() & MouseEvent.BUTTON3_MASK) != 0) { int modifiers = e.getModifiers(); modifiers -= MouseEvent.BUTTON3_MASK; modifiers |= MouseEvent.BUTTON1_MASK; MouseEvent ne = new MouseEvent(e.getComponent(), e.getID(), e .getWhen(), modifiers, e.getX(), e.getY(), e .getClickCount(), false); T_Player.dispatchEvent(ne); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -