@Conflictx3 You refer to plugins. Does that mean it's for MV? This section is for VX Ace.
Also, why wouldn't giving the ring a state or have it call a common event which changed the sprite work?
EDIT
This is what I did to have a piece of equipment (which is what a ring is, it is not an item) do something when it was equipped and then unequipped.
First of all, you would have to give that ring an equipment type which only the particular actor has, otherwise any actor could equip it and then you'd be in a mess.
Ring calls a common event, set to parallel process and with a condition switch, in my case switch 270. Here is a screen shot of my event.
You can't see the full script call there. Here it is
$game_party.members.any? { |member| member.equips.include?($data_armors[12]) }
You would have to change the armor ID from my 12 to whatever the ring is.
There might be no need for a second common event for what you want to do. Instead you would inflict the state which changes the sprite. If you can't get a state to do that, then call a common event which just changes the actor's sprite via the event menu command, tab 3.
In the 'Else' section, keep the wait for 60 frames and remove the state, if that is working. Otherwise, call a third common event which changes the actor's sprite back again.
EDIT 2
I think it might be better if this were refined a little. This is to help make the common event more efficient. I have used 'Boredom' as the example state. You need a state without name or icon so that the player is unaware that it is there.
The CE is still parallel process, conditioned by a switch, but now the commands would be
What's happening is this.
It checks if the ring is equipped on Actor 1. If it is, it looks to see if the state is present. If it is, it does nothing, except have a wait to prevent lag.
If the state is not present, this tells the CE that it has only just been equipped. It inflicts the state and changes the sprite.
In the main 'Else' branch, this runs if the ring is not equipped.
If the state is present, this tells it that the ring has been unequipped. It removes the state and changes the sprite graphic back to the original.
If the state is not present, then there is nothing to do, so there is a wait to prevent lag.