Walking characters and those teleporting with charges do very weird things when picking up items since 8.0, so I looked into it.
When _yoink_item is called with force_tp = True, this parameter is passed to char.move as force_move = force_tp. As a result, a teleport is not forced and a character teleporting with charges will always walk.
Even if force_tp is passed, a character teleporting with charges still won't teleport, since the code expects a call to char.select_tp(), as is done in pather.py.
In general, the wait(0.09, 0.12) is so tiny that the yoink will fail almost any time the character is not teleporting, since they will immediately click back to the center of the screen. This includes the non-teleporting call to yoink (line 125) whenever the item is far enough.
Walking characters and those teleporting with charges do very weird things when picking up items since 8.0, so I looked into it.
When _yoink_item is called with force_tp = True, this parameter is passed to char.move as force_move = force_tp. As a result, a teleport is not forced and a character teleporting with charges will always walk.
Even if force_tp is passed, a character teleporting with charges still won't teleport, since the code expects a call to char.select_tp(), as is done in pather.py.
In general, the wait(0.09, 0.12) is so tiny that the yoink will fail almost any time the character is not teleporting, since they will immediately click back to the center of the screen. This includes the non-teleporting call to yoink (line 125) whenever the item is far enough.