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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? joffa.pas

?? 小程序 可以任意的拖動(dòng) 會(huì)找到一定的水平線 右擊退出即可
?? PAS
字號(hào):
Unit joffa;

Interface

Uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ExtCtrls, Math, BitmapRegion;

Type
  TDirection = (dLeft, dRight, dFront);

  TMood = Record
    Sad, Happy, Anger: single;
    hunger: single;
  End;


  TJoffaForm = Class(TForm)
    Image: TImage;
    Procedure FormCreate(Sender: TObject);
    Procedure MoveJoffa;
//    procedure CreateParams(var Params: TCreateParams); override;
    Procedure ImageMouseDown(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    Procedure ImageMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    Function IsBlocked(x, y: integer): boolean;
    Procedure MoveSingle(dx, dy: single);
    Procedure Move(vx, vy: single);

    Function StepIsBlocked(dx, dy: single): boolean;
    Function FOnGround: boolean;

  Private
    { Private declarations }
    FDirection: tdirection;
    FAlwaysOnTop: boolean;
    hooked: boolean;
    hook, mousepos: tpoint;
    crashx, crashy: boolean;
    blink, stall: integer;
    speed, dizziness, happiness: single; {0 to 1}
  Public
    { Public declarations }
    x, y, vx, vy, ax, ay: single;
    head, pic: single;
    ohead, opic, FramesSinceLastCrashy: integer;
    Property direction: tdirection Read fdirection Write fdirection Default dright;
    Property alwaysontop: boolean Read falwaysontop Write falwaysontop Default true;
    Property OnGround: boolean Read FOnGround;
  End;

Var
  JoffaForm         : TJoffaForm;

Implementation
Uses settings, main;
{$R *.DFM}

Function IsWindowAt(X, Y: integer): boolean;
Var h               : hwnd;
  r                 : trect;
Begin
  If (x < 0) Or (y < 0) Or (x >= screen.width) Or (y >= screen.height) Then
  Begin
    result := true;
  End Else
  Begin
    h := WindowFromPoint(point(x, y));
    If h <> 0 Then
    Begin
      getwindowrect(h, r);
//      if abs(x-r.right)<10 then settingsform.caption:=inttostr(r.right)+'='+inttostr(x);
//      if x+1=r.right then showmessage('hit!');

      If (x = r.Left) Or (x = r.right - 1) Or
        (y = r.Top) Or (y = r.Bottom) Then result := true Else result := false;
    End Else result := false;
  End;
End;


Function TJoffaForm.FOnGround: boolean;
Var i               : integer;
Begin
  result := (FramesSinceLastCrashy < 20);
End;

Function TJoffaForm.StepIsBlocked(dx, dy: single): boolean;
Begin
  result := false;
  If dx > 0 Then
  Begin
    If iswindowat(trunc(x + dx) + width, trunc(y + dy)) Then result := true;
    If iswindowat(trunc(x + dx) + width, trunc(y + dy) + height) Then result := true;
  End;
  If dx < 0 Then
  Begin
    If iswindowat(trunc(x + dx), trunc(y + dy)) Then result := true;
    If iswindowat(trunc(x + dx), trunc(y + dy) + height) Then result := true;
  End;
  If dy > 0 Then
  Begin
    If iswindowat(trunc(x + dx), trunc(y + dy) + height) Then result := true;
    If iswindowat(trunc(x + dx) + width, trunc(y + dy) + height) Then result := true;
  End;

  If hooked Then result := false;
End;

Procedure TJoffaForm.MoveSingle(dx, dy: single);
Begin
  If (Not crashx) And (Not StepIsBlocked(dx, 0)) Then x := x + dx Else crashx := true;
  If (Not crashy) And (Not StepIsBlocked(0, dy)) Then y := y + dy Else crashy := true;
  If (x < screen.desktopleft) Or (x > screen.desktopwidth - width) Then crashx := true;
  If (y < screen.desktoptop) Or (y > screen.desktopheight - height) Then crashy := true;
End;

Procedure TJoffaForm.Move(vx, vy: single);
Var i               : integer;
  dx, dy, l, frac   : single;
Begin
  crashx := false;
  crashy := false;
  If abs(vx) > abs(vy) Then l := abs(vx) Else l := abs(vy);
  If l > 0 Then
  Begin
    dx := vx / l;
    dy := vy / l;
    For i := 1 To trunc(l) Do movesingle(dx, dy);
    frac := l - trunc(l);
    movesingle(dx * frac, dy * frac);
  End;
End;


Function TJoffaForm.IsBlocked(x, y: integer): boolean;
Begin
  result := false;
End;


Procedure TJoffaForm.FormCreate(Sender: TObject);
Begin
  stall := 10;
  width := 32;
  height := 32;
End;

Procedure TJoffaForm.MoveJoffa;
Begin
  If hooked Then
  Begin
    ax := (mouse.cursorpos.x - (left + hook.x)) * 0.02;
    ay := (mouse.cursorpos.y - (top + hook.y)) * 0.02;
    MousePos := point(Mouse.CursorPos.x, Mouse.CursorPos.y);
  End Else
  Begin
    ay := gravity;
  End;


  vx := vx * 0.98 + ax;
  vy := vy * 0.98 + ay;
  move(vx, vy);

  If (crashx) Then
  Begin
    ax := -ax;
    vx := -vx;
    If speed > 10 Then hooked := false;
    If (vx > 0) Then direction := dright;
    If (vx < 0) Then direction := dleft;
  End;

  If (crashy) Then
  Begin
    ay := -ay;
    vy := -vy;
    If speed > 10 Then hooked := false;
  End;

  If Crashy Then FramesSinceLastCrashy := 0 Else inc(FramesSinceLastCrashy);

  ax := 0;
  If onground Then
  Begin
    Case Direction Of
      dright: ax := 0.01;
      dleft: ax := -0.01;
      Dfront: ax := 0;
    End;
  End;

  If crashy Then
  Begin
    If random(40) * random(10) = 1 Then vy := -4 - random(10);
  End;
  If hooked Then stall := 10;
  If (crashx) And (crashy) Then If stall > 0 Then dec(stall) Else If stall < 10 Then inc(stall);

  If (stall = 0) And Not hooked Then
  Begin
    hooked := true;
    move(vx, vy + 1);
    hooked := false;
  End;

  speed := sqrt(sqr(vx) + sqr(vy));


  If crashy Then
    If Not isWindowAt(trunc(x + vx + 16), trunc(y) + 33) Then
    Begin
      vx := -vx;
      If (vx > 0) Then direction := dright;
      If (vx < 0) Then direction := dleft;
    End;


  If (x < 0) Then x := 0;
  If (y < 0) Then y := 0;
  If (x > screen.width - width) Then x := screen.width - width;
  If (y > screen.height - height) Then y := screen.height - height; {}

  If (trunc(x) <> left) Or (trunc(y) <> top) Then
  Begin
    left := trunc(x);
    top := trunc(y);
  End;
//if alwaysontop then
// BringToFront;

//if alwaysontop then self.SetZOrder(True);

//if not onground then pic:=7;
  If speed > 5 Then head := 1 Else head := 0;
  If (vy > 2) Then pic := 6;
  If (vy < -2) Then pic := 7;

  If head = 0 Then head := 6;
  If head = 0 Then
  Begin
    If blink > 0 Then dec(blink) Else blink := 200 + random(10) * 40;
    If (blink >= 10) And (blink < 15) Then head := 2;
    If (blink >= 5) And (blink < 10) Then head := 3;
    If (blink >= 0) And (blink < 5) Then head := 2;
  End;

  If GetTopWindow(0) <> handle Then
    SetWindowPos(handle, HWND_TOPMOST, left, top, width, height, swp_nomove Or swp_nosize Or swp_showwindow);

//  if vx>0 then direction:=dright else direction:=dleft;
  If (opic <> trunc(pic)) Or (ohead <> trunc(head)) Then
  Begin
// image.picture.Bitmap.Canvas.fil
    If direction = dright Then
    Begin
      MainForm.Heads.GetBitmap(trunc(head), Image.Picture.Bitmap);
      MainForm.Legs.GetBitmap(trunc(pic), Image.Picture.Bitmap);
    End Else
    Begin
      MainForm.FHeads.GetBitmap(trunc(head), Image.Picture.Bitmap);
      MainForm.FLegs.GetBitmap(trunc(pic), Image.Picture.Bitmap);
    End;
    SetWindowRgn(Self.Handle, BitmapToRegion(Image.Picture.Bitmap.Handle, rgb(0, 0, 255)), True);
    opic := trunc(pic);
    ohead := trunc(head);
    Invalidate;
  End;
  pic := pic + 0.1;
  If pic >= 6 Then pic := 1;
End;

Procedure TJoffaForm.ImageMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
Begin
  If button = mbright Then
  Begin
    MainForm.PopupMenu1.Popup(left + x, top + y);
  End Else
  Begin
    Hooked := True;
    Hook := point(mouse.cursorpos.x - left, mouse.cursorpos.y - top);
    MousePos := Point(Mouse.CursorPos.X, Mouse.CursorPos.Y);
  End;
End;

Procedure TJoffaForm.ImageMouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
Begin
  Hooked := False;
  Ax := 0;
  Ay := 0;
End;

End.

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩免费电影网站| 1区2区3区精品视频| 91精品国产综合久久国产大片 | 国产色产综合产在线视频| 9191成人精品久久| 日韩一区二区在线观看视频| 在线成人免费观看| 日韩欧美亚洲国产另类| 欧美一级专区免费大片| 日韩欧美123| 精品国内片67194| 亚洲精品一区在线观看| 久久综合九色综合欧美就去吻| 精品日本一线二线三线不卡| 精品国产乱码久久久久久久久| 精品国产亚洲在线| 国产亚洲精品中文字幕| 亚洲欧洲三级电影| 亚洲精品视频观看| 日韩国产欧美在线播放| 久久精品国产99| 国产在线一区二区| 成人毛片在线观看| 在线视频观看一区| 欧美美女视频在线观看| 日韩视频在线一区二区| 欧美精品一区二区三区四区| 欧美国产精品劲爆| 亚洲欧美日本韩国| 舔着乳尖日韩一区| 激情成人综合网| 成人晚上爱看视频| 在线观看视频91| 91精品国产综合久久国产大片| 亚洲精品一区二区三区精华液| 国产精品乱码妇女bbbb| 一区二区三区四区不卡在线| 欧美aⅴ一区二区三区视频| 国产a视频精品免费观看| 91啪在线观看| 日韩欧美电影一二三| 国产精品久久久久一区二区三区共| 亚洲永久免费av| 久久99久久久久| 91免费在线看| 日韩欧美中文字幕公布| 国产精品免费免费| 亚洲bdsm女犯bdsm网站| 国产精品亚洲成人| 欧洲精品在线观看| 久久久精品中文字幕麻豆发布| 亚洲久本草在线中文字幕| 日韩成人免费在线| 91在线观看一区二区| 日韩欧美区一区二| 亚洲乱码国产乱码精品精的特点| 日本美女一区二区三区视频| 成人国产精品免费观看动漫| 精品视频一区二区三区免费| 久久精品一区二区| 性做久久久久久久免费看| 国产乱国产乱300精品| 欧美日韩一区二区三区在线| 久久亚洲精品国产精品紫薇| 亚洲在线观看免费视频| 国产不卡免费视频| 91精品国产乱| 亚洲精品国产无套在线观| 国内精品视频666| 欧美在线视频日韩| 国产精品国产三级国产普通话三级 | 久久色.com| 亚洲国产日韩精品| 成人黄色一级视频| 欧美大片在线观看一区二区| 亚洲欧美另类久久久精品2019| 久热成人在线视频| 色哟哟亚洲精品| 中文字幕精品三区| 国产又黄又大久久| 欧美一区二区视频观看视频| 亚洲猫色日本管| 国产91精品欧美| 欧美大片在线观看一区二区| 亚洲超碰97人人做人人爱| 91丨九色丨黑人外教| 国产日韩欧美不卡| 国产一区二区不卡| 日韩一区二区免费在线观看| 亚洲成人av一区二区三区| 色综合天天性综合| 一区二区中文字幕在线| 国产福利不卡视频| 精品国产三级a在线观看| 日韩不卡一区二区| 欧美人伦禁忌dvd放荡欲情| 一区二区三区美女视频| 99视频一区二区| 国产精品国产三级国产| 国产成人精品免费一区二区| 精品国产伦一区二区三区观看体验| 日韩电影在线免费| 欧美精品色综合| 视频一区二区三区中文字幕| 欧美老肥妇做.爰bbww视频| 亚洲一区二区在线观看视频| 91福利精品视频| 一区二区三区国产精华| 在线视频欧美精品| 一区二区三区在线免费观看| 日本丰满少妇一区二区三区| 一区二区成人在线| 欧美日韩高清影院| 日韩电影网1区2区| 欧美va亚洲va| 国产在线精品免费| 中文字幕乱码日本亚洲一区二区 | 91丨九色丨黑人外教| 亚洲另类一区二区| 欧美调教femdomvk| 日本亚洲视频在线| 精品国产一区二区三区久久久蜜月| 韩国毛片一区二区三区| 久久久久99精品一区| av在线一区二区| 亚洲一区二区中文在线| 91精品国产综合久久久久久久久久| 日日摸夜夜添夜夜添国产精品| 91精品国产福利| 毛片一区二区三区| 久久众筹精品私拍模特| 国产不卡免费视频| 亚洲精品免费电影| 在线播放亚洲一区| 国产呦萝稀缺另类资源| 国产色一区二区| 91蜜桃免费观看视频| 日韩精品福利网| 久久伊99综合婷婷久久伊| 成人午夜在线免费| 亚洲午夜精品久久久久久久久| 日韩午夜精品视频| 不卡视频一二三| 午夜欧美2019年伦理| 久久久亚洲午夜电影| 日本道色综合久久| 久久99精品一区二区三区三区| 国产精品三级电影| 欧美人与z0zoxxxx视频| 国模娜娜一区二区三区| 一区二区三国产精华液| 精品国产a毛片| 一本色道久久加勒比精品 | 欧美日韩中文精品| 国产一区二区三区蝌蚪| 亚洲激情网站免费观看| 日韩精品综合一本久道在线视频| 国产99久久久久| 亚洲h精品动漫在线观看| 欧美激情综合五月色丁香小说| 欧美在线不卡视频| 国产在线一区二区综合免费视频| 亚洲激情av在线| 欧美zozozo| 欧美在线啊v一区| 国产成人午夜精品5599| 日韩精品一二区| 国产精品国模大尺度视频| 日韩视频国产视频| 欧美亚日韩国产aⅴ精品中极品| 国产资源在线一区| 五月综合激情婷婷六月色窝| 国产精品久久久久影院老司| 日韩一区二区三区在线| 在线观看一区二区视频| 岛国av在线一区| 日本怡春院一区二区| 亚洲激情自拍视频| 国产午夜精品美女毛片视频| 日韩一区二区精品| 欧美伊人精品成人久久综合97 | 91在线高清观看| 国内精品国产三级国产a久久| 午夜精品久久久久影视| 亚洲人精品午夜| 国产偷国产偷亚洲高清人白洁| 欧美一级二级三级乱码| 欧美日韩亚洲不卡| 色综合久久88色综合天天免费| 国产激情视频一区二区在线观看| 免费国产亚洲视频| 亚洲va天堂va国产va久| 一区二区三区四区不卡在线 | 日韩av网站在线观看| 亚洲成人三级小说| 亚洲免费观看高清完整版在线| 欧美国产亚洲另类动漫| 国产亚洲一区二区三区四区| 26uuu国产一区二区三区| 日韩欧美一区二区久久婷婷|