最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

.NET開發(fā)實(shí)現(xiàn)一個(gè)微信跳一跳的輔助程序

 更新時(shí)間:2018年01月03日 10:43:08   作者:中國.NET研究協(xié)會(huì)  
最近比較火的小游戲就是微信跳一跳了,下面這篇文章主要給大家介紹了關(guān)于如何利用.NET開發(fā)實(shí)現(xiàn)一個(gè)微信跳一跳輔助程序的相關(guān)資料,利用此輔助可以輕松的實(shí)現(xiàn)高分,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。

前言

相信大家應(yīng)該都知道了,最近微信更新了,出現(xiàn)了一個(gè)小游戲“跳一跳”,玩了一下 趕緊還蠻有意思的 但純粹是拼手感的,玩了好久,終于搞了個(gè)135分拿了個(gè)第一名,沒想到過一會(huì)就被朋友刷下去了,最高的也就200來分把,于是就想著要是開發(fā)個(gè)輔助就好了,于是簡單想了一下最高游戲

先來說下這個(gè)游戲的界面和規(guī)則:

先看看界面

規(guī)則:

按住屏幕 按一定時(shí)間松開就可以跳躍,跳躍到前方的圖案中得1分,圖按中間得2分(連續(xù)多個(gè)中間累加2分,比如第一個(gè)2分 第二個(gè)4分 第三個(gè)6分 最高累計(jì)32分) 其它規(guī)則不說明了

整理了下實(shí)現(xiàn)原理,其實(shí)挺簡單的:就是計(jì)算黑人的底部到圖案中間的距離,然后就調(diào)試時(shí)間,調(diào)好時(shí)間后就計(jì)算一個(gè)像素點(diǎn)的最佳時(shí)間X,然后以后每次測試黑人底部到圖案中心的距離*X 就是最佳時(shí)間

理論知識(shí)好了 就來實(shí)踐吧

      1、首先要獲取手機(jī)屏幕的圖片 并展示在winform程序里面

      2、讓客戶點(diǎn)擊黑人底部和圖案中心點(diǎn)(根據(jù)圖片去獲取這兩個(gè)點(diǎn) 貌似有點(diǎn)困難 至少我現(xiàn)在的技術(shù)困難)

      3、模擬屏幕按下并按住多長時(shí)間

獲取屏幕圖片我們可以根據(jù)安卓的adb.exe來獲取,但我對(duì)這個(gè)東西不太熟悉,就百度了幾個(gè)命令 1、截屏命令 2 傳輸命令 和模擬滑動(dòng)命令

adb shell /system/bin/screencap -p /sdcard/screenshot.png(保存到SDCard)

adb pull /sdcard/screenshot.png d:/screenshot.png(保存到電腦)

adb shell input swipe 250 250 300 300 100 滑動(dòng) 前四個(gè)是坐標(biāo) 最后一個(gè)是時(shí)間

好了實(shí)現(xiàn)的方法也找到了 就碼代碼吧

執(zhí)行adb命令的函數(shù)

/// <summary>
  /// 執(zhí)行adb命令
  /// </summary>
  /// <param name="arguments"></param>
  /// <param name="ischeck"></param>
  /// <returns></returns>
  private string cmdAdb(string arguments,bool ischeck=true)
  {
   if (ischeck&&!HasAndroid)
   {
    return string.Empty;
   }
   string ret = string.Empty;
   using (Process p = new Process())
   {
    p.StartInfo.FileName = Program.AdbPath;// @"C:\Android\sdk\platform-tools\adb.exe";
    p.StartInfo.Arguments = arguments;
    p.StartInfo.UseShellExecute = false;
    p.StartInfo.RedirectStandardInput = true; //重定向標(biāo)準(zhǔn)輸入 
    p.StartInfo.RedirectStandardOutput = true; //重定向標(biāo)準(zhǔn)輸出 
    p.StartInfo.RedirectStandardError = true; //重定向錯(cuò)誤輸出 
    p.StartInfo.CreateNoWindow = true;
    p.Start();
    ret = p.StandardOutput.ReadToEnd();
    p.Close();
   }
   return ret;
  }

//圖片點(diǎn)擊事件

/// <summary>
  /// 黑人底部位置
  /// </summary>
  Point Start;
  /// <summary>
  /// 圖案中心或者白點(diǎn)位置
  /// </summary>
  Point End;
  private void pictureBox1_Click(object sender, EventArgs e)
  {
   var me = ((System.Windows.Forms.MouseEventArgs)(e));
   if (me.Button==MouseButtons.Left)//按下左鍵是黑人底部的坐標(biāo)
   {
    Start = ((System.Windows.Forms.MouseEventArgs)(e)).Location;
   }
   else if (me.Button == MouseButtons.Right)//按下右鍵鍵是黑人底部的坐標(biāo)
   {
    End = ((System.Windows.Forms.MouseEventArgs)(e)).Location;
    //計(jì)算兩點(diǎn)直接的距離
    double value = Math.Sqrt(Math.Abs(Start.X - End.X) * Math.Abs(Start.X - End.X) + Math.Abs(Start.Y - End.Y) * Math.Abs(Start.Y - End.Y));
    Text = string.Format("兩點(diǎn)之間的距離:{0},需要按下時(shí)間:{1}", value, (3.999022243950134 * value).ToString("0")); 
    //3.999022243950134 這個(gè)是我通過多次模擬后得到 我這個(gè)分辨率的最佳時(shí)間
    cmdAdb(string.Format("shell input swipe 100 100 200 200 {0}", (3.999022243950134 * value).ToString("0")));
   }
  }

就這樣核心代碼就完成了 是不是趕緊很簡單了。。

最后放出效果把 ,(可惜被我女票手賤就截屏了,截屏的時(shí)候手碰了屏幕 導(dǎo)致按下去跳下去了,不然我是要刷到1W分的 哈哈)

我估計(jì)這個(gè)分?jǐn)?shù) 純手玩 估計(jì)比較心碎把 哈哈 朋友圈就霸占第一名把 哈哈

最后給源碼吧

地址:https://files.cnblogs.com/files/dotnet-org-cn/tiaotitiao.rar

本地下載:http://xiazai.jb51.net/201801/yuanma/ShowAndroidModel(jb51.net).rar

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)腳本之家的

相關(guān)文章

最新評(píng)論

绥棱县| 合作市| 凌源市| 五华县| 四会市| 宁都县| 大丰市| 内丘县| 平谷区| 扶风县| 资溪县| 秀山| 英吉沙县| 庆安县| 靖州| 富川| 丰顺县| 西丰县| 墨玉县| 同德县| 延庆县| 治县。| 广宗县| 平度市| 连城县| 香格里拉县| 南华县| 云霄县| 西乡县| 霞浦县| 桐柏县| 老河口市| 金秀| 郎溪县| 卢湾区| 淮北市| 平湖市| 彩票| 佛坪县| 华蓥市| 阳江市|