client.verbs is not readable.
verbs += /client/verb/whatever
will add the verb to the client, however client.verbs will still be an empty list.
Numbered Steps to Reproduce Problem:
Add verbs to client.verbs. Check client.verbs, it will be empty.
Workarounds:
Store your own list of verbs that are assigned to clients.
Additional Notes:
This is not the case for verbs on any other objects, for example mob.verbs contains a list of all verbs that can be used by the mob, however mob.client.verbs will contain nothing.
edit: The verbs in the list are readable, however .Find doesn't work and .len always returns 0 on the client verbs. If you copy the verbs list, then .len and .Find work as intended.
Test Case:
/*
These are simple defaults for your project.
*/
world
fps = 25 // 25 frames per second
icon_size = 32 // 32x32 icon size by default
view = 6 // show up to 6 tiles outward from center (13x13 view)
// Make objects move 8 pixels per tick when walking
mob
step_size = 8
obj
step_size = 8
/client/proc/secret_proc()
src << "EEK"
/client/New()
. = ..()
src << "==Empty Test=="
src << verbs.len
for(var/i in verbs)
src << i
src << "Finished"
verbs += /client/proc/secret_proc
src << "==List Test=="
src << verbs.len
for(var/i in verbs)
src << i
src << "Finished"
src << "==FIND TEST=="
if(verbs.Find(/client/proc/secret_proc))
src << "Verb found!"
else
src << "Verb not found!"
src << "==Copy Test=="
var/list/new_list = verbs.Copy()
src << "Copy Length: [new_list.len]"
for(var/i in new_list)
src << i
==Empty Test==
0
Finished
==List Test==
0
/client/proc/secret_proc
Finished
==FIND TEST==
Verb not found!
==Copy Test==
Copy Length: 1
/client/proc/secret_proc
Copied list length is fine, it's just verbs.len returns 0. Additionally, find always seems to return 0 too when done from the verbs list.