That is strange, because it looks pretty good.

This is one of those times that gdb is very helpful.

If you don't know gdb, making a few send_to_char calls spread around
there can tell you what parts of the code are being executed, what the
values of variables are, etc.

On 12/10/05, Maurice Visser <[EMAIL PROTECTED]> wrote:
> I actually put my little code into the ITEM_MONEY
> section there, but it doesn't seem to do anything.
> Even without the check to see if it's coming from a
> corpse. Strange. I'll keep looking.
>
> Maurice
>
>
>
> -----Original Message-----
>
> You can do it in do_get, search for ITEM_MONEY.  It
> should have something like:
>     if ( obj->item_type == ITEM_MONEY)
>     {
>         ch->silver += obj->value[0];
>         ch->gold += obj->value[1];
> You might put something like this in next:
>   if (container && container->item_type ==
> ITEM_CORPSE_NPC)
>   {
>    ...
>   }
> so it only affects money looted from mob corpses, not
> money they drop
> and pick up or whatever.
>
> Alternatively, you could work it into raw_kill in
> fight.c, before the
> call to make_corpse.  In that case, you would pull the
> money directly
> from the mob's CHAR_DATA before it's made into a money
> object.  Then
> the mob's gold would be in victim->gold.  And there
> wouldn't be an
> obj.
>
>
> On 12/10/05, Maurice Visser <[EMAIL PROTECTED]> wrote:
> > Quick question. I'm trying to implement a clan tax
> for
> > my guild system. I'd like it to take clan.taxrate of
> > the gold from killing a mob (mob's wealth) and put
> it
> > into the clan.account. I have the code set up
> already.
> > I'm just not sure where I have to put it. I'm
> looking
> > through do_get, but can't seem to figure it out.
> >
> >
> >
> >   /* clan tax time */
> >
> >
> >
> >   if ( ( is_clan(ch) ) &&
> >      (
> > clan_table[clan_lookup(player_clan(ch))].taxrate > 0
> )
> > )
> >   {
> >        temp1 = ( obj->value[1] *
> > /* <---- I need the variable name of the mob's
> wealth
> > */
> >        (
> > clan_table[clan_lookup(player_clan(ch))].taxrate /
> > 100) );
> >
> >        if ( (temp1 > .5) && (temp1 < 1) )
> >
> >                 temp1 = 1;
> >
> >
> >
> >             if ( (temp1 < .5) )
> >
> >                 temp1 = 0;
> >
> >
> >
> >             if ( temp1 > 0 )
> >
> >             {
> >
> >                 sprintf( buf, "{WYour clan taxes you
> > {Y%d {Wcoins.{x\n\r", temp1 );
> >
> >                 send_to_char( buf, ch );
> >
> >
> >
> >
> > clan_table[clan_lookup(player_clan(ch))].account +=
> > temp1;
> >
> >                 save_guilds( ch, "all" );
> >
> >
> >
> >                 ch->gold -= temp1;
> >
> >             }
> >
> >         }
> --
> ROM mailing list
> [email protected]
> Unsubscribe here ->>> http://www.rom.org/cgi-bin/mailman/listinfo/rom
>
--
ROM mailing list
[email protected]
Unsubscribe here ->>> http://www.rom.org/cgi-bin/mailman/listinfo/rom

Reply via email to