From 957ddd61e167d1a7fbe30f7d2b66fadee4e14314 Mon Sep 17 00:00:00 2001 From: davpapp Date: Tue, 13 Mar 2018 06:43:04 -0400 Subject: [PATCH] Working at 23k / xp an hour with 2 ores --- src/CursorTask.java | 4 ++++ src/Inventory.java | 4 ++++ src/IronMiner.java | 9 +++++++-- target/classes/CursorTask.class | Bin 2789 -> 2899 bytes target/classes/Inventory.class | Bin 3805 -> 3928 bytes target/classes/IronMiner.class | Bin 5703 -> 5803 bytes 6 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/CursorTask.java b/src/CursorTask.java index 01dca78..3c5982c 100644 --- a/src/CursorTask.java +++ b/src/CursorTask.java @@ -26,6 +26,10 @@ public class CursorTask { return (int) (Math.hypot(a.x - b.x, a.y - b.y)); } + public void dropOre(Cursor cursor, Inventory inventory) throws Exception { + dropItem(cursor, inventory, 0, 0); + } + public void dropAllItemsInInventory(Cursor cursor, Inventory inventory) throws Exception { for (int row = 0; row < 4; row++) { for (int column = 0; column < 7; column++) { diff --git a/src/Inventory.java b/src/Inventory.java index 5beaeca..4397b32 100644 --- a/src/Inventory.java +++ b/src/Inventory.java @@ -79,6 +79,10 @@ public class Inventory { return inventorySlots[row][column].getItemNameInInventorySlot(items); } + public boolean inventorySlotIsEmpty(int row, int column) { + return inventorySlots[row][column].isInventorySlotEmpty(items); + } + public boolean isLastSlotInInventoryFull() { return !inventorySlots[Constants.INVENTORY_NUM_ROWS - 1][Constants.INVENTORY_NUM_COLUMNS - 1].isInventorySlotEmpty(items); } diff --git a/src/IronMiner.java b/src/IronMiner.java index e4316ce..dbff826 100644 --- a/src/IronMiner.java +++ b/src/IronMiner.java @@ -58,7 +58,7 @@ public class IronMiner { count++; BufferedImage screenCapture = objectDetector.captureScreenshotGameWindow(); - ArrayList detectedObjects = objectDetector.getObjectsInImage(screenCapture, 0.20); + ArrayList detectedObjects = objectDetector.getObjectsInImage(screenCapture, 0.30); ArrayList ironOres = objectDetector.getIronOres(detectedObjects); if (ironOres.size() == 0) { @@ -99,11 +99,16 @@ public class IronMiner { oreLostCount = 0; } } + + inventory.update(); + if (!inventory.inventorySlotIsEmpty(0, 0)) { + cursorTask.dropOre(cursor, inventory); + } } humanBehavior.randomlyCheckMiningXP(cursor); randomDetector.dealWithRandoms(screenCapture, cursor); - dropInventoryIfFull(); + //dropInventoryIfFull(); if (count % 100 == 0) { System.out.println((System.currentTimeMillis() - startTime) / 1000); } diff --git a/target/classes/CursorTask.class b/target/classes/CursorTask.class index 43d8617ab79428ebdb50b23186c5a446b4dab231..15d5de775e471f4c77bbbc8855976db55e0762ad 100644 GIT binary patch delta 581 zcmZ8dO)o297(LUO&UD6LluDaOQN+iPBF5(xK_c;EG;C0YuJ#m&Ou9?=VtiW z%p8Q{7pM8;iHc2Zu@|9^Gk>{j>UWWpu*ad&;iag;(Ko#33R z3*E%#Fv1O};iX-kxi$}QD%-;H(AxSL(c^$yiuZijm#hx|*CjxX)v6$a__ve!?tjYe68 zGI6!)-7a894+vVRrf6aThxT9INgxP`>Oty;$lDLPW*B~qP!gkP!I+au57_{D{Yb_5 mOvS)4;dX`wdLfbuPbr;HC!mi|8Ls~*_e&9RHg+_U zE-Y;9?8IlVu<#8;oHntsx#ymHfB$=b=e_d760bi`&j31+&5M*wXL7YR;>0LobR%C@ zBrvICLV`AMk~_-goS4Eibtqwb0<%ucVV;haIc*WkI+o~7vE&u3(x>8+)=8+<+9tMj zY*CBqmXp|_A+_F0Amzj!_9Zl@v!}^uW;>SLp{P<$*NREE>YZeNjA_pjW$gWy7bSMI7Xxf}2Ogn7Aop3){RRMnnyJM(pys*w(R+2m>p&K*OPoqhD5% zpz$y9mRX*zjl+URPsc236+tEB2vHxYA%9OZ9XwP;Fsd@CQRH=bfK77A2(CfO*JBK|vZS7I?($cb?!BdYUMp)TB{K mL5b-*hBL02gZ?bx9C~QGoxGaayzo(PqH~Osj^Tos4wpY_BTwZ3 delta 361 zcmXw!OG^S_6o%hV=R(6cIgvq(ibOXiM3fkujs1f%TBNpUhAxyvK}c%1>1Ow6@$I8! z%OokN=m)fD?WTVc)yZh{edj%#_j%80Mn59T+t<@8fMHzLm8QtkQjC9#HZMry(x!?n zZ1cKgCq3-R*k#a)?z)?B%cVqib#bMnVjngGtF*zxp^92dRTX&LkZ)M~{fj&z^2tD) zP4HSE<}YK7-v+YXIf%$ZK>=Y*AxiZCa!6pB>srREpbCag+UgntB>FA0fuxZNryj5| zs{5{tpt<108`yCyL1#VTU~fwvIF|SfFCP*@;vW}spg2IgR59{tqG z{Lv|WkQC)04V%AfdgK@<@YAgEdm*_^^3rv*H^V9a)RIF>R4=zEU6cYM{Zk~IVT|S& J&Z+Oi#ShQmMA!fT diff --git a/target/classes/IronMiner.class b/target/classes/IronMiner.class index 240ceebf81caf02c5bab8641f7a2cff53b53affc..f86848dbb00c5fe4994702680a670058fb8bacbf 100644 GIT binary patch delta 1569 zcmZWpYiv_x7=GTK({p;duUogZg~DKi!B}^z8`}^T=HfJQxFJSFgZQJ`W}9s7=(^#& zb^e%BAc&l}I5crtH2Z-;VORb~IqG zz&^Y{a7P2-V5GC7udyw3``VWFaC^A*W_`q#tGp<1059o#ZS{5yYw)tbD>$Uj(R|7g zysqLkeT6n%I*K>+wOR$8)VFDc;t1XmIEr^UZLwZyb&a3aj+6WoAx}SH%ac_6q94!j z>ZEyW2D0A;{?I2frYYwIF5oXcLlh~03#70|UnB~vl!iwdctC*CFnr7u>?D(-l9k}R zBhVZ0cLc(%{*`UfP#`Es@DK&L z$gQt(6u766SEcC$tuYerjs?Q8Zb38jjgDDLo}gJYTi@Ymv}IF)pgG**dB?iu1>{qy zn2>3v4Xls(S47&wF+n9z2y~}L3#d#`xq0ielbSVV*J2&5#$t*fM(fdo8#!bYP6G>8;U*&) z#qb{92k|(f_y7tdXzc$XOERX@mG}s!7=IB}<1{{IZ6*2e2}>%kT?(J#GuY4;$02-< zFQ9Re1ir*quwx@e@HMB-zz`nAHyrA~Ft*|hzC|XUz{B{Cr7S#&P57RzPK==$KX61g ze&p6Xuv{uT@o(7)E_;@3ZLp^xWTF(RRGd?9MVHEWbJA!*mI~fP-netDGXMQ5epWHS zN+RGQTI36`xYL*e+y8xmG>=xEG;k>ke$@}>&Rz2x)5diEIgEUk{zLFZ7t$`GB!&i( zBpD1zCPN+`8_>rc-^GaTMgi_YIqow_5Ik^jnMo4P>Q}ky=zhK5H7!0#29QNIMlG3W zC6I&rxR--1q!~St9rKvQTy{|TzC4#QmeTUl1c@cqG5EaJz2qbuME?@GBuO5xoWOq%MU~3Wz&{X=pMH#KETvJz||kbOgsc1Ho(tpRxwXC zth<7lTZS#n)m9TrJ$rHsm#`R;u_(kjmeE|cS@>K-g}f*d=bJ(ESduxbp!sZ3Os*&A zVMI=V;wESxq%?1b!bBLmFTOR~T%thimsJo47;v+1(A6 zsGHHbWCkO-gg7)Y^3P0W)IBT(5vO1f1>aA6<6}d7<0}L=&%MKGV$)yy-E+?GJihPT zvC88Wj#uUm9RaYKYQ`Ozl5%3i`0Sf3khVzn20SJ3G{*I__JBMoFokDypIRSqfN(${ zjpc;gNHWpY6z`43wM4S7>9%WnVlfq)aY*1<9M;3CU!KN`3SQ73RP(GyaZDdmtLUVD zS}hXOcun9aUMG0U^lF=Xa+%{4N#7Fk^;K%VRl#?X{jNYo%IVhW43gr;g#zeeZ3&*u?LAmCJ569a`}EL`Pf`R0NqoJ5?&A5<#WrQ=fy% zD4>x4pLlbg=CIZ-sGKS$&u1Pc&j#3#3(%%CZfUUATWh6JxDmX^1P=1mf~XtMZBOBO6A!!bQo@bnd`>*{@Z1rOalM+t zsd1)RLM#7Hph92k()-)VjSgCYPAb7Rszi*|;wriU3A!0w*vOIlk!`exHr!;~rZ&8R zH+k=5YQk?RX3y;bW-% z=)oR*f=}VV{kRLCaq0~0MK_1aaAJg;_yT8;iAS&j#SEY<21ei}gmqadHag5_5?{&eF)8hZ!RxM(P1 zH5KtPYkpBSUKMkTEgeN;KaB&1D