Say i have this mob
mob
Entrance_D00d
icon = 'blank.dmi'
density=1
verb
Speak()
set category = "Main"
set src in oview(1)
switch(input("Do j00 want into the cirucs?",text) in list("Yes","No"))
if("Yes")
switch(input("Are you sure you want entrance?",text) in list("Entrance"))
if("Entrance")
if(usr.cash>=5)
usr.cash = (usr.cash - 5)
usr.loc = locate(10,2,16)
else
alert("Not Enough cash! Get Out!!")
if("no")
alert("K")
arg i forgot how to post code.. oh well..
anyways..
how do i make it so when you right click on entrance d00d that all it says is "speak" and not "boot" and "ban" and all that other jazz?
THANKS ^_^
-Cait
edit: i could do set popup_menu = 0 on every verb i know, but i want JUST that specific mob to have ONLY speak cuz i want the verbs for the people just not the mobs
thanks again ^^
ID:269416
Jun 22 2005, 6:52 am (Edited on Jun 22 2005, 7:24 am)
|
|
In response to O-matic
|
|
but like in thie one dragon warrior game
you click the shop dude and it''d have "Buy" and "Sell" and you click the Inn dude and it'd have "Sleep" unless they set like mob2. mob3, i dont even know if thats possible.. |
In response to Mashed_The_Hamster
|
|
mob Two mobs, two different verbs. |
In response to Ol' Yeller
|
|
Ol' Yeller wrote:
> mob Two mobs, two different verbs. was that what he want????? I'm confused.. I thought he meant that he doesn't want all the other verbs in the right click menu... oh well... O-matic |
In response to O-matic
|
|
What do you mean? It works for me.
|
In response to Ol' Yeller
|
|
Yes but if you right click them they also have
Whisper Marriage Add Gm Boot Ban and i dont want those there. |
In response to Mashed_The_Hamster
|
|
You could make the NPCs objs then, I don't know how your verbs are set up. Or make your verbs for clients and not mobs.
|
In response to Mashed_The_Hamster
|
|
Mashed_The_Hamster wrote:
Yes but if you right click them they also have you cant remove them from there unless you delete those verbs or like O'| Yeller mentioned make the mobs objs. O-matic |
In response to O-matic
|
|
Yeaaah but it still has Delete OBJ and Edit.. on there.. for objects..
but uhm.. i guess if you guys figure out a way to have specific verbs not on speicific mobs (or objs) then gimme a msg =3 thanks for you help ^_^ |
In response to Mashed_The_Hamster
|
|
Use clients instead of mobs if the verbs are only meant for players.
ie: mob |
In response to Ol' Yeller
|
|
ok this will probably work but how would i impliment it into my verbs
like whisper for example mob/verb/ Whisper(M as mob in world,msg as text) set category = "Chat" M << "[usr] whispers, '[msg]'" usr << {"You have whispered To [M] : [msg] "} would it be like mob verb Whisper(client/c as client in world)//It may be c as client or\ client/c, I can't remember if(!c)return M << "[usr] whispers, '[msg]'" usr << {"You have whispered To [M] : [msg] "} ?? or what? |
Simply horrible advice, folks. If you don't know what you're talking about, let someone else who does post. This is supposed to be a place to learn, not confuzzle. :P
So, you defined a bunch of verbs for moderating players at the mob level, and you want to know how to remove them for your NPCs? Why not just define those verbs for player mobs, instead of under mob? mob See how that works? Only NPCs will have the Speak, only Players will have Kick, and everyone has Global. When you define something at a higher level (in your case, /mob), it is shared by everything defined as a sub-type of that level. By giving /mob the Global verb, every sub-type of /mob, including /mob/NPC and /mob/Player will have it. But, because we defined Speak and Kick at the specific sub-level, only that type and it's sub-types will get it. So, a /mob/NPC/Entrance_D00D will have the Global and Speak verbs, becuase it is a sub-type of both /mob and /mob/NPC, while a /mob/Player/Necromancer will have the Global and Kick verbs. There is a way to re-define the verbs for sub-types, but the above method is a better design for this situation. Make sense? ~X |
In response to Xooxer
|
|
Yeah but... some things are global even though it doesnt HAVE the global thingy there..
so.. do YOU know how i'd impliement the client thing into the verb? cuz they arent answering it yet o_O |
In response to Mashed_The_Hamster
|
|
well that code i tried says
verbs.dm:4:error: Bad input type: client so .. what would whisper be? XD |
In response to Mashed_The_Hamster
|
|
Global thingy... what? And, no, I'm not going to show you how to do client verbs, this method works. Client verbs are hacky, I won't show you bad techniques, sorry.
~X |
In response to Xooxer
|
|
ok ...
see this code... mob/verb/ Whisper(M as mob in world,msg as text) set category = "Chat" M << "[usr] whispers, '[msg]'" usr << {"You have whispered To [M] : [msg] "} It doesnt have the Global() in it, yet it is global to ALL mobs and players is there anyway to set whisper JUST to the players? =3 |
In response to Mashed_The_Hamster
|
|
There is no Global() thingy that makes verbs global. That was just the name I gave to that particular verb. What makes it global is where it is defined. Your whisper verb is defined right under /mob. See that? Right there, /mob/verb/Whisper(). What you want is to define it only for player mobs: /mob/player/verb/whisper. This assumes you have players running around as sub-types of /mob/player, like /mob/player/Necromancer or /mob/player/Pirate. It's generally bad practice to define things right under mob if they aren't going to be needed by all mobs in the game.
~X |
In response to Xooxer
|
|
Here, maybe this will help.
world ~X |
In response to O-matic
|
|
I think I finally figured out what you want Mashed.
something like: [code] mob/Player var/blah mob/GM/verb/Boot(M as mob/Player in view()) del(M) [/code] You make the player mobs mob/Player. This way it won't show up. I think this works, haven't tested it. |
except for setting all of the other verbs in
set hidden=1
but that hides the verbs, so I dont think thats usefull..
O-matic