The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Blacksmithing and Skillmenus
Author Message
Skul
Master
**

Posts: 413
Likes Given: 0
Likes Received: 19 in 15 posts
Joined: Jun 2012
Reputation: 9



Post: #2
RE: Blacksmithing and Skillmenus
Try lighting the forge and checking for the anvil when tryting to craft with blacksmithing, example:
Code:
[events e_blacksmithing]
on=@itemdclick
if (<act.type>==t_ingot) || (<act.baseid>==i_stone)
  if (<findlayer.1.type>==t_weapon_mace_smith) || (<findlayer.2.type>==t_weapon_mace_smith)
    if (<isnearlitforge>)
      if (<isneartype t_anvil 3>)
        skillmenu sm_blacksmith
      else
        sysmessage You must be near an anvil to do that.
      endif
      return 1
    endif
    if (<restest 1 i_coal)
      local.uid=<uid>
      foritems 3
        if !(<local.lit>)
          if (<type>==t_forge)
            serv.newitem=i_forge_fire
            new.attr=attr_move_never|attr_decay
            new.p=<p.x>,<p.y>,<eval <z> +7>,<map>
            new.link=<local.uid>
            new.timer=<eval 60*10>
            tag.lit=1
            timerf <eval 60*10>, tag.lit=
            local.lit=1
            trysrc <local.uid> uid.<local.uid>.message @036 <name> is lit and ready to be used.
            uid.<local.uid>.consume 1 i_coal
          endif
        endif
      endfor
      if (<local.lit>)
        if (<isneartype t_anvil 3>)
          skillmenu sm_blacksmith
        else
          sysmessage You must be near an anvil to do that.
        endif
      else
        sysmessage You need to light a forge with coal to do that.
      endif
    else
      sysmessage You need coal to do that.
    endif
  else
    sysmessage You must weild a smith's hammer to do that.
  endif
  return 1
endif

on=@itemtargon_item
if (<targ.type>==t_ingot) || (<targ.baseid>==i_stone)
  if (<act.type>==t_weapon_mace_smith)
    if (<isnearlitforge>)
      if (<isneartype t_anvil 3>)
        skillmenu sm_blacksmith
      else
        sysmessage You must be near an anvil to do that.
      endif
      return 1
    endif
    if (<restest 1 i_coal)
      local.uid=<uid>
      foritems 3
        if !(<local.lit>)
          if (<type>==t_forge)
            serv.newitem=i_forge_fire
            new.attr=attr_move_never|attr_decay
            new.p=<p.x>,<p.y>,<eval <z> +7>,<map>
            new.link=<local.uid>
            new.timer=<eval 60*10>
            tag.lit=1
            timerf <eval 60*10>, tag.lit=
            local.lit=1
            trysrc <local.uid> uid.<local.uid>.message @036 <name> is lit and ready to be used.
            uid.<local.uid>.consume 1 i_coal
          endif
        endif
      endfor
      if (<local.lit>)
        if (<isneartype t_anvil 3>)
          skillmenu sm_blacksmith
        else
          sysmessage You must be near an anvil to do that.
        endif
      else
        sysmessage You need to light a forge with coal to do that.
      endif
    else
      sysmessage You need coal to do that.
    endif
  else
    sysmessage You must weild a smith's hammer to do that.
  endif
  return 1
endif

[function isnearlitforge]
foritems 3
  if (<type>==t_forge)
    if (<tag0.lit>)
      local.return=1
    endif
  endif
endfor
return <dlocal.return>
*untested*

"I ask a question to the answer I already know."

Marchadium :: http://www.marchadium.ca/ :: Join us!
(This post was last modified: 08-10-2014 01:08 AM by Skul.)
08-10-2014 01:04 AM
Visit this user's website Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Messages In This Thread
Blacksmithing and Skillmenus - Jonaleth - 08-09-2014, 10:34 PM
RE: Blacksmithing and Skillmenus - Skul - 08-10-2014 01:04 AM
RE: Blacksmithing and Skillmenus - Skul - 08-10-2014, 02:24 AM
RE: Blacksmithing and Skillmenus - Skul - 08-10-2014, 02:52 AM
RE: Blacksmithing and Skillmenus - Skul - 08-10-2014, 09:35 AM

Forum Jump:


User(s) browsing this thread: 1 Guest(s)