diff --git a/config.ini b/config.ini index 4d120d6..1d94b64 100644 --- a/config.ini +++ b/config.ini @@ -1,7 +1,7 @@ [settings] version=1.4b dfversion=34.11 -menus=Minimal +menus=Full keys=Default [offsets] ; Base address of DF. Don't change unless you need to. @@ -24,8 +24,8 @@ mapsizex=0x146c75C mapsizey=0x146c760 [pass] ; This section is only for the script's use, don't touch please. -dragkey=~MButton -menucount=10 +dragkey=+~MButton +menucount=147 keycount=20 cursoron=1 ruleon=0 diff --git a/cursor.exe b/cursor.exe index ae8a844..9f3d92c 100644 Binary files a/cursor.exe and b/cursor.exe differ diff --git a/menus.ahk b/menus.ahk index 0c9e21f..3a66a82 100644 --- a/menus.ahk +++ b/menus.ahk @@ -1,3 +1,534 @@ +Look: +flagexec("g(k)") +return + +View: +flagexec("g(v)") +return + +ViewBuilding: +flagexec("g(t)") +return + +SetPrefs: +flagexec("g(q)") +return + +Info: +return + +Dig: +flagexec("g(dd)") +return + +FellTrees: +flagexec("g(dt)") +return + +GatherPlants: +flagexec("g(dp)") +return + +Smooth: +flagexec("g(ds)") +return + +Engrave: +flagexec("g(de)") +return + +CarveFortifications: +flagexec("g(da)") +return + +Carve: +return + +Up: +flagexec("g(du)") +return + +Down: +flagexec("g(dj)") +return + +UpDown: +flagexec("g(di)") +return + +Ramp: +flagexec("g(dr)") +return + +Remove: +flagexec("g(dz)") +return + +Stairs: +return + +Channel: +flagexec("g(dh)") +return + +RemoveDesignation: +flagexec("g(dx)") +return + +RemoveConstruction: +flagexec("g(dn)") +return + +RemoveBuilding: +flagexec("g(qx)") +return + +Designations: +return + +ArmorStand: +flagexec("g(ba)") +return + +Bed: +flagexec("g(bb)") +return + +Seat: +flagexec("g(bc)") +return + +BurialReceptacle: +flagexec("g(bn)") +return + +Cabinet: +flagexec("g(bf)") +return + +Container: +flagexec("g(bh)") +return + +WeaponRack: +flagexec("g(br)") +return + +Statue: +flagexec("g(bs)") +return + +Slab: +flagexec("g(b!s)") +return + +Table: +flagexec("g(bt)") +return + +ArcheryTarget: +flagexec("g(bA)") +return + +TractionBench: +flagexec("g(bR)") +return + +NestBox: +flagexec("g(bN)") +return + +Hive: +flagexec("g(b!h)") +return + +Furniture: +return + +WallGrate: +flagexec("g(bW)") +return + +FloorGrate: +flagexec("g(bG)") +return + +VerticalBars: +flagexec("g(bB)") +return + +FloorBars: +flagexec("g(b!b)") +return + +PavedRoad: +flagexec("g(bo)") +return + +DirtRoad: +flagexec("g(bO)") +return + +GlassWindow: +flagexec("g(by)") +return + +GemWindow: +flagexec("g(bY)") +return + +Wall: +flagexec("g(bCw)") +return + +Floor: +flagexec("g(bCf)") +return + +Ramp1: +flagexec("g(bCr)") +return + +UpStair: +flagexec("g(bCu)") +return + +DownStair: +flagexec("g(bCd)") +return + +UpDownStair: +flagexec("g(bCx)") +return + +Fortification: +flagexec("g(bCF)") +return + +Track: +flagexec("g(bCT)") +return + +TrackStop: +flagexec("g(bCS)") +return + +Structures: +return + +Constructions: +return + +Kennels: +flagexec("g(bk)") +return + +FarmPlot: +flagexec("g(bp)") +return + +LeatherWorks: +flagexec("g(bwe)") +return + +Quern: +flagexec("g(bwq)") +return + +Millstone: +flagexec("g(bwM)") +return + +Loom: +flagexec("g(bwo)") +return + +ClothiersShop: +flagexec("g(bwk)") +return + +BowyersWorkshop: +flagexec("g(bwb)") +return + +CarpentersWorkshop: +flagexec("g(bwc)") +return + +MetalsmithsForge: +flagexec("g(bwf)") +return + +JewelersWorkshop: +flagexec("g(bwj)") +return + +MasonsWorkshop: +flagexec("g(bwm)") +return + +ButchersShop: +flagexec("g(bwu)") +return + +TannersShop: +flagexec("g(bwn)") +return + +CraftsdwarfsWorkshop: +flagexec("g(bwr)") +return + +SiegeWorkshop: +flagexec("g(bws)") +return + +MechanicsWorkshop: +flagexec("g(bwt)") +return + +Still: +flagexec("g(bwl)") +return + +FarmersWorkshop: +flagexec("g(bww)") +return + +Kitchen: +flagexec("g(bwz)") +return + +Fishery: +flagexec("g(bwh)") +return + +Ashery: +flagexec("g(bwy)") +return + +DyersShop: +flagexec("g(bwd)") +return + +SoapMakersWorkshop: +flagexec("g(bwS)") +return + +ScrewPress: +flagexec("g(bwp)") +return + +WoodFurnace: +flagexec("g(bew)") +return + +Smelter: +flagexec("g(bes)") +return + +GlassFurnace: +flagexec("g(beg)") +return + +Kiln: +flagexec("g(bek)") +return + +TradeDepot: +flagexec("g(bD)") +return + +Workshops: +return + +Door: +flagexec("g(bd)") +return + +Floodgate: +flagexec("g(bx)") +return + +FloorHatch: +flagexec("g(bH)") +return + +Bridge: +flagexec("g(bg)") +return + +Well: +flagexec("g(bl)") +return + +Ballista: +flagexec("g(bib)") +return + +Catapult: +flagexec("g(bic)") +return + +StoneFallTrap: +flagexec("g(bTs)") +return + +WeaponTrap: +flagexec("g(bTw)") +return + +Lever: +flagexec("g(bTl)") +return + +PressurePlate: +flagexec("g(bTp)") +return + +CageTrap: +flagexec("g(bTc)") +return + +UprightSpearSpike: +flagexec("g(bTS)") +return + +ScrewPump: +flagexec("g(bMs)") +return + +WaterWheel: +flagexec("g(bMw)") +return + +Windmill: +flagexec("g(bMm)") +return + +GearAssembly: +flagexec("g(bMg)") +return + +HorizontalAxle: +flagexec("g(bMh)") +return + +VerticalAxle: +flagexec("g(bMv)") +return + +Roller: +flagexec("g(bMr)") +return + +Support: +flagexec("g(bS)") +return + +AnimalTrap: +flagexec("g(bm)") +return + +Restraint: +flagexec("g(bv)") +return + +Cage: +flagexec("g(bj)") +return + +TrapsMachines: +return + +Mechanisms: +return + +Buildings: +return + +Animal: +flagexec("g(pa)") +return + +Food: +flagexec("g(pf)") +return + +Furniture1: +flagexec("g(pu)") +return + +Corpses: +flagexec("g(py)") +return + +Refuse: +flagexec("g(pr)") +return + +Stone: +flagexec("g(ps)") +return + +Wood: +flagexec("g(pw)") +return + +Gem: +flagexec("g(pe)") +return + +BarBlock: +flagexec("g(pb)") +return + +Cloth: +flagexec("g(ph)") +return + +Leather: +flagexec("g(pl)") +return + +Ammo: +flagexec("g(pz)") +return + +Coins: +flagexec("g(pn)") +return + +FinishedGoods: +flagexec("g(pg)") +return + +Weapons: +flagexec("g(pp)") +return + +Armor: +flagexec("g(pd)") +return + +Custom: +flagexec("g(pc)") +return + +CustomSettings: +flagexec("g(pt)") +return + +RemoveStockpiles: +flagexec("g(px)") +return + +Stockpiles: +return + +1: +return + Prospect: flagexec("a(prospect)") return @@ -21,6 +552,9 @@ return DFHack: return +2: +return + RefreshScript: flagexec("l") return diff --git a/non-compiled scripts/cursor.ahk b/non-compiled scripts/cursor.ahk index 3448b73..1abe363 100644 --- a/non-compiled scripts/cursor.ahk +++ b/non-compiled scripts/cursor.ahk @@ -15,8 +15,12 @@ IniRead, constructioncursoroffset, config.ini, offsets, constructioncursor IniRead, cursoron, config.ini, pass, cursoron IniRead, fullmenuoffset, config.ini, offsets, fullmenu +SetTimer, checkmouse, 1 + Loop { + if (moved = "0") + Continue IfWinNotExist, mouse.ahk ExitApp if (WinActive("Dwarf Fortress") and WinActive("ahk_class SDL_app")) @@ -34,6 +38,8 @@ Loop fullmenu := ReadMemory(base+fullmenuoffset,"Dwarf Fortress") mousex := ((mousex + windowx) - 1) mousey := ((mousey + windowy) - 1) + if ((cursorx == mousex) and (cursory == mousey)) + moved := 0 if ((cursorx > 4000000000) or ((sidemenutype = "16") and (constructioncursor > 4000000000)) or (fullmenu = "0") or (sidemenutype = "0")) { Sleep 5 @@ -89,4 +95,12 @@ else result := 4294967295 } return, result -} \ No newline at end of file +} + +checkmouse: +MouseGetPos, xaa, yaa +Sleep 1 +MouseGetPos, xbb, ybb +if ((xaa <> xbb) and (yaa <> ybb)) + moved := 1 +Return \ No newline at end of file