ID:1909883
 
(See the best response by Kaiochao.)
Code:
mob/var/list/obj/Hotbar_Commands[]=list()
mob/verb
activate_hotbar(var/key)
switch(key)
if("1")
call(Hotbar_Commands[1],Hotbar_Commands[1]/Click())()


Problem description:
I'm not sure whether this would work. basically all Objs' have Click() proc and the skillcards are going to be clicking verb. When dragging on to a Hotbar, depending on the number of the hotbar, it'll put into a Hotbar Commmand. In the Macros, activate_hotbar("1") etc. will be there and activate the code underenath. I'm not so sure that'll it work if I did it like that

+

With the
activate_hotbar(var/key)
When compiled it comes with -- loading New Game.dme
Coding\Hotbar System.dm:55:error: key: undefined argument type
New Game.dmb - 1 error, 0 warnings
Best response
Verb arguments must have an "as [input type]" after each.

For example,
mob
var hotbar[]

verb/activate_hotbar(N as text)
if(hotbar && (N in hotbar))
var obj/command_button = hotbar_commands[N]
if(command_button)
command_button.Click()

proc/SetHotbar(Slot, Button)
if(!hotbar) hotbar = new
hotbar["[Slot]"] = Button

I snuck in the handling of the 0 slot.

Your macros should have commands like "activate-hotbar 0", "activate-hotbar 1", etc.