亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hitpigheadv1.java

?? JAVA2游戲程序設計源碼 可以幫助初學者或者只想改改程序就能用的人
?? JAVA
字號:
// 程序:棒打豬頭
// 范例文件:HitPigHeadv1.java

import java.awt.*;
import java.util.*;
import java.applet.*;
import java.awt.event.*;

abstract class SuperSprite    
{
   int     X,Y,width,height;
   boolean visible,active;

   abstract public void paintSprite(Graphics g);
   abstract public void updateState();

   public int getX()
   {
      return X;
   }

   public int getY()
   {
      return Y;
   }

   public void setLocation(int X,int Y)
   {
      this.X = X;
      this.Y = Y;
   }

   public int getWidth()
   {
      return width;
   }

   public int getHeight()
   {
      return height;
   }

   public void setSize(int width,int height)
   {
      this.width  = width;
      this.height = height;
   }

   public boolean canVisible()
   {
      return visible;
   }

   public void setVisible(boolean v)
   {
      visible = v;
   }

   public boolean canMove()
   {
      return active;
   }

   public void setMove(boolean m)
   {
      active = m;
   }
}

class PigSprite extends SuperSprite  
{
   int     seed;                    
   Image   SpriteImage,Frame;        
   Applet  Game;                   
   Random  R;
   boolean showPig;              

   public PigSprite(Image SpriteImage,Image Frame,Applet Game)
   {
      R = new Random();

      this.SpriteImage = SpriteImage;
      this.Frame       = Frame;
      this.Game        = Game;  
      showPig          = false; 
      
      setVisible(true);           
      setMove(true);            
   }

   public void updateState()
   {
      if(active == true)
      {
         if(R.nextInt(seed) % 100 < 1)
         {
            if(showPig == false)
               showPig = true;
         }
         else if(R.nextInt(seed) % 100 > 95)
         {
            if(showPig == true)
               showPig = false;
         }
      }
   }

   public void paintSprite(Graphics g)  
   {
      if(visible == true)     
      { 
         g.drawImage(Frame,X,Y,Game);  

         if(showPig == true)
            g.drawImage(SpriteImage,X + 12,Y + 18,Game);
      }
   }

   public void setSeed(int seed)
   {
      this.seed = seed;
   }

   public boolean hit(int X,int Y,int P_Width,int P_Height,int H_Width,
                      int H_Height)      
   {
      if((this.X + P_Width >= X) && (this.Y + (P_Height / 2) >= Y) && 
         (X + (H_Width / 2) >= this.X) && (Y + (H_Height / 2) >= this.Y) 
         && showPig)
      {
         showPig = false;
         return true;
      }
      else
         return false;
   }
}

class HammerSprite extends SuperSprite 
{
   Image  hammer1,hammer2,currentImage; 
   Applet Game; 
 
   public HammerSprite(Image hammer1,Image hammer2,Applet Game)
   {
      this.hammer1 = hammer1;
      this.hammer2 = hammer2;
      this.Game    = Game;

      currentImage = hammer1;

      setLocation(0,0);
      setVisible(false);     
      setMove(false);      
   }

   public void updateState()
   {
      if(currentImage == hammer1)
         currentImage = hammer2;
      else
         currentImage = hammer1;
   }

   public void paintSprite(Graphics g) 
   {
      if(visible == true)      
         g.drawImage(currentImage,X,Y,Game); 
   }
}

public class HitPigHeadv1 extends Applet 
             implements Runnable,MouseListener,MouseMotionListener
{
   int          AppletWidth,AppletHeight,FrameWidth,FrameHeight,
                countX,countY,HammerWidth,HammerHeight,score;
   Image        frame,pig,hammer1,hammer2,OffScreen;
   Thread       newThread; 
   Graphics     drawOffScreen;
   MediaTracker MT;   

   PigSprite    pigSprite[];
   HammerSprite hammerSprite;

   public void init()
   {
      addMouseListener(this);         
      addMouseMotionListener(this);   

      AppletWidth  = getSize().width;
      AppletHeight = getSize().height;

      countX       = 3;         
      countY       = 3;        
      score        = 0;        

      MT      = new MediaTracker(this);
      pig     = getImage(getDocumentBase(),"Images/pig.gif");
      frame   = getImage(getDocumentBase(),"Images/frame.gif");
      hammer1 = getImage(getDocumentBase(),"Images/hammer1.gif");
      hammer2 = getImage(getDocumentBase(),"Images/hammer2.gif");
      MT.addImage(pig,0);
      MT.addImage(frame,0);
      MT.addImage(hammer1,0);
      MT.addImage(hammer2,0);

      try
      {
         MT.waitForAll();
      }      
      catch(InterruptedException E){ }  

      FrameWidth  = frame.getWidth(this);   
      FrameHeight = frame.getHeight(this); 

      pigSprite   = new PigSprite[9];
      for(int i=0;i<9;i++)
      {

         pigSprite[i] = new PigSprite(pig,frame,this);


         pigSprite[i].setLocation(i%countX*FrameWidth,
                                  i/countY*FrameHeight);
 
         pigSprite[i].setSeed(i+100);  
      }         

      hammerSprite   = new HammerSprite(hammer1,hammer2,this);
      HammerWidth    = hammer1.getWidth(this);  
      HammerHeight   = hammer1.getHeight(this); 

      OffScreen      = createImage(AppletWidth,AppletHeight);
      drawOffScreen  = OffScreen.getGraphics();

      resize(FrameWidth*countX,FrameHeight*countY);
   }

   public void start()         
   {
      newThread = new Thread(this);  
      newThread.start();
   }

   public void stop()      
   {
      newThread = null;    
   }

   public void paint(Graphics g)
   {

      drawOffScreen.clearRect(0,0,AppletWidth,AppletHeight);


      for(int i=0;i<9;i++)
         pigSprite[i].paintSprite(drawOffScreen);


      hammerSprite.paintSprite(drawOffScreen);
           

      g.drawImage(OffScreen,0,0,this); 
   }

   public void update(Graphics g)    
   {
      paint(g);       
   }

   public void run()
   {
      while(newThread != null)
      {
         repaint();          

         try
         {
            Thread.sleep(33);  
         }
         catch(InterruptedException E){ }

         for(int i=0;i<9;i++)     
            pigSprite[i].updateState();
      }
   }

   public void mouseExited(MouseEvent e)  
   {
      hammerSprite.setVisible(false);    
      hammerSprite.setLocation(0,0);     
   }
   
   public void mouseClicked(MouseEvent e){ }  
   
   public void mouseEntered(MouseEvent e)  
   {
      hammerSprite.setVisible(true);     

      hammerSprite.setLocation(e.getX() - (HammerWidth / 2),
                               e.getY() - (HammerHeight / 2));
   }
   
   public void mousePressed(MouseEvent e) 
   {
      hammerSprite.updateState();       

      int X = hammerSprite.getX();     
      int Y = hammerSprite.getY();   

      for(int i=0;i<9;i++)
      {

         if(pigSprite[i].hit(X,Y,FrameWidth,FrameHeight,HammerWidth,
                             HammerHeight) == true)
         {
            score = score + 10;
            showStatus("目前得分: " + score);
         }
      }
   }

   public void mouseReleased(MouseEvent e) 
   {
      hammerSprite.updateState();          
   }

   public void mouseMoved(MouseEvent e)  
   {

      hammerSprite.setLocation(e.getX() - (HammerWidth / 2),
                               e.getY() - (HammerHeight / 2));
   }  
 
   public void mouseDragged(MouseEvent e)   
   {

      hammerSprite.setLocation(e.getX() - (HammerWidth / 2),
                               e.getY() - (HammerHeight / 2));
   }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
jlzzjlzz亚洲女人18| 国产xxx精品视频大全| 中文字幕日本乱码精品影院| 久久综合狠狠综合久久综合88| 日韩精品中文字幕一区| 欧美一区二视频| xfplay精品久久| 国产丝袜在线精品| 中文字幕中文字幕一区| 亚洲免费在线视频一区 二区| 亚洲精品久久久蜜桃| 一区二区三区四区在线免费观看| 一区二区三区精品在线观看| 亚洲综合av网| 视频一区视频二区中文| 久久99久久久欧美国产| 国产成人一区二区精品非洲| av一区二区三区四区| 欧洲av在线精品| 日韩一区二区三区四区五区六区 | 丁香六月久久综合狠狠色| 成人丝袜18视频在线观看| 色呦呦国产精品| 制服丝袜亚洲色图| 日本一区二区不卡视频| 亚洲品质自拍视频网站| 日韩精品一二三| 国产91精品在线观看| 欧美日韩一区小说| 久久日韩精品一区二区五区| 亚洲欧美日韩国产综合| 久久精品国产99国产| 99久久精品国产麻豆演员表| 欧美女孩性生活视频| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 中文字幕精品一区| 亚洲综合色婷婷| 国产99久久久国产精品 | 日韩高清中文字幕一区| 国产乱码精品一区二区三区五月婷| 成人爱爱电影网址| 欧美精品国产精品| 中文字幕在线视频一区| 久久精品国产精品青草| 色吧成人激情小说| 中文字幕av一区 二区| 美女脱光内衣内裤视频久久网站 | 久久综合久久鬼色中文字| 亚洲一区二区三区精品在线| 国产精品888| 日韩欧美久久久| 亚洲成人tv网| 99天天综合性| 国产精品欧美久久久久无广告 | 91麻豆成人久久精品二区三区| 欧美精品日韩一区| 亚洲一区在线观看免费观看电影高清 | 国产欧美中文在线| 免费xxxx性欧美18vr| 欧美系列亚洲系列| 亚洲欧美日韩人成在线播放| 高清不卡一区二区在线| 精品国产乱码久久久久久蜜臀| 亚欧色一区w666天堂| av午夜一区麻豆| 国产女人18毛片水真多成人如厕| 精品一区二区国语对白| 欧美一区二区三区免费在线看| 一区二区三区中文在线| 色婷婷综合久久久中文一区二区| 国产精品污www在线观看| 国产精品资源在线看| 久久亚洲综合色| 国产福利一区二区| 国产日韩欧美激情| 成人av网站在线| 亚洲柠檬福利资源导航| 91丨九色porny丨蝌蚪| 国产精品视频你懂的| 97精品久久久久中文字幕| 亚洲免费伊人电影| 色婷婷av一区二区三区之一色屋| 中文字幕在线不卡一区二区三区| 91麻豆免费观看| 亚洲精品成人少妇| 欧美日本一道本在线视频| 免费欧美在线视频| 26uuu另类欧美| 粉嫩欧美一区二区三区高清影视| 国产丝袜欧美中文另类| 成人av免费在线观看| 亚洲免费观看视频| 欧美一区二区三区免费在线看| 黑人巨大精品欧美黑白配亚洲| 日本一区二区三区久久久久久久久不| 成人h精品动漫一区二区三区| **网站欧美大片在线观看| 色婷婷精品大视频在线蜜桃视频 | 韩国女主播成人在线观看| 国产片一区二区| 欧美最猛黑人xxxxx猛交| 日av在线不卡| 国产人成一区二区三区影院| 成人免费毛片片v| 亚洲一区免费在线观看| 2017欧美狠狠色| 在线观看中文字幕不卡| 国产一区中文字幕| 一区二区三区中文字幕| 久久久综合精品| 欧美少妇bbb| 国产99一区视频免费| 日日夜夜精品视频免费| 久久精品人人做| 4438x成人网最大色成网站| 国产成人精品一区二区三区四区 | 精品久久国产97色综合| 91污在线观看| 韩国一区二区三区| 午夜天堂影视香蕉久久| 国产精品毛片久久久久久久| 欧美高清性hdvideosex| 99热99精品| 国产激情视频一区二区在线观看 | 精品精品欲导航| 欧美影院午夜播放| 成人理论电影网| 国产九色sp调教91| 天堂久久一区二区三区| 日韩久久一区二区| 国产日韩欧美激情| 精品久久久网站| 日韩一区国产二区欧美三区| 色狠狠av一区二区三区| 成人动漫av在线| 成人一区二区三区中文字幕| 麻豆国产欧美一区二区三区| 亚洲国产日韩av| 一区二区三区在线免费观看| 欧美国产综合一区二区| 久久久久久一级片| 精品国精品国产| 欧美精品一区二区三区高清aⅴ| 制服视频三区第一页精品| 欧美日韩综合不卡| 在线观看欧美日本| 欧美日韩在线三区| 欧美高清你懂得| 3d动漫精品啪啪一区二区竹菊 | 亚洲免费电影在线| 亚洲美女精品一区| 亚洲特级片在线| 亚洲欧美激情一区二区| 一区二区三区四区不卡视频 | 欧美一级日韩免费不卡| 欧美日韩三级在线| 制服丝袜av成人在线看| 日韩女优电影在线观看| 精品国产免费久久| 国产欧美精品一区二区三区四区| 国产日韩精品视频一区| 国产精品萝li| 亚洲最大的成人av| 日日夜夜精品视频免费| 久久成人麻豆午夜电影| 国内外成人在线| 成人免费av网站| 91国产福利在线| 欧美xxxx老人做受| 久久精品日产第一区二区三区高清版| 欧美国产日韩亚洲一区| 中文字幕一区二区视频| 一区二区三区日韩欧美| 蜜乳av一区二区三区| 国产成人免费视频精品含羞草妖精| 99久久综合国产精品| 91捆绑美女网站| 91精选在线观看| 国产欧美一区二区精品性| 亚洲精品国产第一综合99久久 | 亚洲精品一区二区三区蜜桃下载| 中文字幕欧美国产| 亚洲一区二区中文在线| 麻豆精品新av中文字幕| 99视频在线观看一区三区| 91精选在线观看| 亚洲视频小说图片| 美洲天堂一区二卡三卡四卡视频| 懂色av一区二区三区蜜臀| 欧美日本在线视频| 国产精品每日更新| 麻豆精品在线看| 在线一区二区观看| 精品国产免费视频| 亚洲gay无套男同| 成人午夜av在线| 欧美成人欧美edvon| 亚洲女同女同女同女同女同69| 玖玖九九国产精品| 欧美性xxxxx极品少妇|