#include <lib.h>
varargs mixed CanRoll(object target, object where){
return 1;
}
mixed direct_roll_obj(object target){
if( environment(this_object()) != this_player() ){
return "#You don't have that!";
}
return CanRoll(this_object());
}
mixed direct_roll_obj_on_obj(object target, object where, mixed wtf, mixed wtf2){
if( environment(this_object()) != this_player() ){
return "#You don't have that!";
}
if(!where && wtf2) where = present(wtf2, environment(this_player()));
if(!where && wtf2) where = get_object(wtf2, this_player());
if(!where && (wtf2 == "floor" || wtf2 == "ground")){
return CanRoll(this_object());
}
if(!where || !inherits(LIB_SURFACE,where) ) return "#You can't roll that there!";
return CanRoll(this_object(), where);
}
mixed direct_roll_obj_on_str(object target, string where){
if( environment(this_object()) != this_player() ){
return "#You don't have that!";
}
return CanRoll(this_object());
}
mixed direct_roll_obj_here(object target){
if( environment(this_object()) != this_player() ){
return "#You don't have that!";
}
return CanRoll(this_object());
}
mixed indirect_roll_obj_on_obj(object target, object where){
if( environment(this_object()) != environment(this_player()) ){
return "#That's not here for rolling on.";
}
if(!inherits(LIB_SURFACE,where) ){
return "#You can't roll that on there!";
}
return CanRoll(this_object(), where);
}
mixed indirect_roll_obs_on_obj(mixed target, object where){
return indirect_roll_obj_on_obj(target, where);
}
varargs mixed eventRoll(object ob){
return 1;
}
varargs mixed eventResults(mixed args){
say("The result of "+this_player()->GetName()+"'s roll is: "+identify(args));
write("The result of your roll is: "+identify(args));
return args;
}