| View previous topic :: View next topic |
| Author |
Message |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Fri Apr 15, 2016 6:18 pm Post subject: Plugins and scans |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:03 pm; edited 1 time in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Fri Apr 15, 2016 9:37 pm Post subject: |
|
|
Terminology: the upper-left box of the main CE window is called the "found list" and the bottom section is called the "address list". Look through main.lua or hover over the red drop down arrow to see evidence of this.
If you change the value yourself in the address list, just select the record and press ctrl+z to undo your change. If you're not changing the value yourself, then make a variable that stores the old value whenever the current value changes. Use either a timer or a bptWrite breakpoint to do this.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sat Apr 16, 2016 3:18 am Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:06 pm; edited 2 times in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Sat Apr 16, 2016 11:46 am Post subject: |
|
|
Yes, it's possible to revert an item in the found list back to a value it was at. This would not be easy as you'll have to read from the files on disk that CE uses. I'm not even sure if it's feasible to get the currently selected item in the found list.
As for your second idea, that would be pretty easy to do. Look into the GenericHotkey, Addresslist, and MemoryRecord classes in main.lua. If you want it inside a right click menu, you can try looking into the Control, PopupMenu, and Menu classes, but I'm not sure how feasible that'll be.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sat Apr 16, 2016 12:48 pm Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:05 pm; edited 2 times in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Sat Apr 16, 2016 1:05 pm Post subject: |
|
|
- Find the control with the correct popup menu (trial and error mostly; use the Visible property to help).
- Call createMenuItem(ownermenu) and pass it that popupmenu.
- Set the OnClick property of the menu you created.
- Call setShortcut(shortcut) on the property you created.
- Call popupmenu.Items.add(menu) and pass it the menu you created.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sat Apr 16, 2016 1:11 pm Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:05 pm; edited 2 times in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Sat Apr 16, 2016 1:30 pm Post subject: |
|
|
You can find it in less than a minute if you take some time to look through main.lua.
| Code: | local c = getMainForm().Control[1]
local pm = c.PopupMenu
for i=0, pm.Items.Count - 1 do
print("i:", i, "v:", pm.Items[i].Caption)
end |
Do the printed results look familiar? If so, you found the right one. If not, then change that [1] to something else.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sat Apr 16, 2016 3:02 pm Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:05 pm; edited 2 times in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Sat Apr 16, 2016 4:46 pm Post subject: |
|
|
Second part:
Yes, loop through the table the function getSelectedRecords() returns.
Third part:
I'm confused again. Why do you need to constantly keep track of the value as it changes? All you need to do is save the value to a table (maybe index it using the address) with one function and restore the saved value with the other function. If there is no saved value, then just ignore that address.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sat Apr 16, 2016 5:17 pm Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:05 pm; edited 2 times in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Sat Apr 16, 2016 5:38 pm Post subject: |
|
|
| Quote: | Addresslist Class: (Inheritance: Panel->WinControl->Control->Component->Object)
properties
Count: Integer - The number of records in the table
SelCount: integer- The number of records that are selected
SelectedRecord: MemoryRecord - The main selected record
MemoryRecord[]: MemoryRecord - Array to access the individial memory records
[] = MemoryRecord - Default accessor
methods
getCount()
getMemoryRecord(index)
getMemoryRecordByDescription(description): returns a MemoryRecord object
getMemoryRecordByID(ID)
createMemoryRecord() : creates an generic cheat table entry and add it to the list
getSelectedRecords(): Returns a table containing all the selected records
doDescriptionChange() : Will show the GUI window to change the description of the selected entry
doAddressChange() : Will show the GUI window to change the address of the selected entry
doTypeChange() : Will show the GUI window to change the type of the selected entries
doValueChange() : Will show the GUI window to change the value of the selected entries
getSelectedRecord() : Gets the main selected memoryrecord
setSelectedRecord(memrec) : Sets the currently selected memoryrecord. This will unselect all other entries |
Please read main.lua. I'll even post this section here for you.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sun Apr 17, 2016 8:19 am Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:05 pm; edited 1 time in total |
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4709
|
Posted: Sun Apr 17, 2016 9:04 am Post subject: |
|
|
Please note that tables are not technically arrays, but they can be used like arrays and there is support (i.e. ipairs) for them built into Lua.
CE-related arrays tend to start at index 0, not 1 where Lua expects it to start. This could raise some errors with stuff like ipairs. So you have to loop through it manually like I did above.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
itsoqrappy Advanced Cheater
Reputation: 0
Joined: 24 Mar 2016 Posts: 67
|
Posted: Sun Apr 17, 2016 9:39 am Post subject: |
|
|
Edit: WORKING FOR ANOTHER IDEA, WITH THIS ONE THE GAME CRASHES ANYWAY
Last edited by itsoqrappy on Wed Apr 27, 2016 12:05 pm; edited 1 time in total |
|
| Back to top |
|
 |
|