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
always 200 arrows and bolts in backpack
Author Message
Berkley
Journeyman
*

Posts: 54
Likes Given: 28
Likes Received: 2 in 2 posts
Joined: Jul 2015
Reputation: 0



Post: #1
always 200 arrows and bolts in backpack
i use this function to restock ammo in some npc's backpack (inventar)
.
.
it is working but it produces some error warnings too
.
.
How can I stop the Error Messages?

Best regards, Lars
02-17-2016 06:17 AM
Find all posts by this user Like Post Quote this message in a reply
Kanibal
Master
**

Posts: 255
Likes Given: 6
Likes Received: 30 in 28 posts
Joined: Jun 2012
Reputation: 0



Post: #2
RE: always 200 arrows and bolts in backpack
This will be better
Code:
[function f_restock_ammo]
forcont <uid> 0
  if (<rescount.i_arrow> < 200)
    serv.newitem = i_arrow, <eval 200 - <rescount.i_arrow>>, <uid>
  endif
endfor

timerf 7200, f_restock ammo

Grandmaster Localhost Admin
(This post was last modified: 02-17-2016 06:34 AM by Kanibal.)
02-17-2016 06:25 AM
Visit this user's website Find all posts by this user Like Post Quote this message in a reply
[+] 1 user Likes Kanibal's post
pointhz
Journeyman
*

Posts: 148
Likes Given: 1
Likes Received: 55 in 28 posts
Joined: Oct 2013
Reputation: 1



Post: #3
RE: always 200 arrows and bolts in backpack
IF (<name> == 'arrows' || 'crossbow bolt')

You cant use that.

Use instead:

IF STRMATCH("<NAME>","arrows") || STRMATCH("<NAME>","crossbow bolt")
(This post was last modified: 02-17-2016 07:04 AM by pointhz.)
02-17-2016 07:04 AM
Find all posts by this user Like Post Quote this message in a reply
[+] 1 user Likes pointhz's post
Berkley
Journeyman
*

Posts: 54
Likes Given: 28
Likes Received: 2 in 2 posts
Joined: Jul 2015
Reputation: 0



Post: #4
RE: always 200 arrows and bolts in backpack
Many thanks again :-)

Best regards, Lars
02-17-2016 06:06 PM
Find all posts by this user Like Post Quote this message in a reply
Berkley
Journeyman
*

Posts: 54
Likes Given: 28
Likes Received: 2 in 2 posts
Joined: Jul 2015
Reputation: 0



Post: #5
RE: always 200 arrows and bolts in backpack
(02-17-2016 06:25 AM)Kanibal Wrote:  This will be better
Code:
[function f_restock_ammo]
forcont <uid> 0
  if (<rescount.i_arrow> < 200)
    serv.newitem = i_arrow, <eval 200 - <rescount.i_arrow>>, <uid>
  endif
endfor

timerf 7200, f_restock ammo


it' working, but i still have some error outputs with your script

10:03:ERROR:(sphere_citizens.scp,3203)Non container uid=04000ffe2,id=0f3f
10:03:ERROR:(sphere_citizens.scp,3202)Can't resolve <rescount.i_arrow>
10:03:ERROR:(sphere_citizens.scp,3202)Undefined symbol '' ['< 200)']

3202: if (<rescount.i_arrow> < 200)
3203: serv.newitem = i_arrow, <eval 200 - <rescount.i_arrow>>, <uid>

perhaps, because i'm using the nightly from Dec 1st 2015?
best regards, Lars
02-17-2016 07:12 PM
Find all posts by this user Like Post Quote this message in a reply
karma
Moderator
****

Posts: 178
Likes Given: 17
Likes Received: 32 in 29 posts
Joined: Jul 2012
Reputation: 3



Post: #6
RE: always 200 arrows and bolts in backpack
Use this:

Code:
[FUNCTION f_restock ammo]
CONSUME <RESCOUNT.i_arrow> i_arrow
CONSUME <RESCOUNT.i_xbolt> i_xbolt
SERV.NEWITEM i_arrow, 200, <FINDLAYER.21>
SERV.NEWITEM i_xbolt, 200, <FINDLAYER.21>
TIMERF 7200, f_restock ammo
02-17-2016 07:40 PM
Find all posts by this user Like Post Quote this message in a reply
[+] 1 user Likes karma's post
Berkley
Journeyman
*

Posts: 54
Likes Given: 28
Likes Received: 2 in 2 posts
Joined: Jul 2015
Reputation: 0



Post: #7
RE: always 200 arrows and bolts in backpack
(02-17-2016 07:40 PM)karma Wrote:  Use this:

Code:
[FUNCTION f_restock ammo]
CONSUME <RESCOUNT.i_arrow> i_arrow
CONSUME <RESCOUNT.i_xbolt> i_xbolt
SERV.NEWITEM i_arrow, 200, <FINDLAYER.21>
SERV.NEWITEM i_xbolt, 200, <FINDLAYER.21>
TIMERF 7200, f_restock ammo

Thank you very much :-)
02-17-2016 08:07 PM
Find all posts by this user Like Post Quote this message in a reply
karma
Moderator
****

Posts: 178
Likes Given: 17
Likes Received: 32 in 29 posts
Joined: Jul 2012
Reputation: 3



Post: #8
RE: always 200 arrows and bolts in backpack
Ouch sorry, i wrote f_restock ammo instead of f_restock_ammo.

Code:
[FUNCTION f_restock_ammo]
CONSUME <RESCOUNT.i_arrow> i_arrow
CONSUME <RESCOUNT.i_xbolt> i_xbolt
SERV.NEWITEM i_arrow, 200, <FINDLAYER.21>
SERV.NEWITEM i_xbolt, 200, <FINDLAYER.21>
TIMERF 7200, f_restock_ammo

Note that 21 is layer_backpack, so it puts directly the items inside it.
02-17-2016 08:10 PM
Find all posts by this user Like Post Quote this message in a reply
[+] 1 user Likes karma's post
Kanibal
Master
**

Posts: 255
Likes Given: 6
Likes Received: 30 in 28 posts
Joined: Jun 2012
Reputation: 0



Post: #9
RE: always 200 arrows and bolts in backpack
Here is a short way

Code:
[CHARDEF my_npc]
...
...
...

on=@create
f_restock_ammo

[FUNCTION f_restock_ammo]
if (<rescount.i_arrow> < 200)
  serv.newitem = i_arrow, <eval 200 - <rescount.i_arrow>>, <uid>
endif
timerf 7200, f_restock_ammo

Grandmaster Localhost Admin
(This post was last modified: 02-17-2016 10:35 PM by Kanibal.)
02-17-2016 10:34 PM
Visit this user's website Find all posts by this user Like Post Quote this message in a reply
[+] 1 user Likes Kanibal's post
karma
Moderator
****

Posts: 178
Likes Given: 17
Likes Received: 32 in 29 posts
Joined: Jul 2012
Reputation: 3



Post: #10
RE: always 200 arrows and bolts in backpack
Your solution won't work if you call f_restock_ammo before adding the arrows to the char, and you should add them to the backpack, not to the char directly.
02-17-2016 10:37 PM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Forum Jump:


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