SphereCommunity
addgold function for vendors - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: Sphere 0.56d (/Forum-Sphere-0-56d)
+--- Forum: Script Help (/Forum-Script-Help)
+--- Thread: addgold function for vendors (/Thread-addgold-function-for-vendors)



addgold function for vendors - Lazarus - 09-29-2012 01:06 AM

This is right ?


Code:
[FUNCTION addgold]
LOCAL.AMOUNT=<ARGN1>
WHILE <LOCAL.AMOUNT>
IF (<LOCAL.AMOUNT> >= 65000)
SERV.NEWITEM i_gold
NEW.AMOUNT 65000
LOCAL.AMOUNT -= 65000
ELSE
SERV.NEWITEM i_gold
NEW.AMOUNT <LOCAL.AMOUNT>    
LOCAL.AMOUNT=0
ENDIF
IF (0<ARGN2>)
NEW.CONT <ARGN2>
ELSE
BOUNCE <NEW>
ENDIF
ENDWHILE
UPDATE

[PLEVEL 4]
addgold


This is was we are talking in the chat Tongue

Shock


RE: addgold function for vendors - Extreme - 09-29-2012 03:29 AM

PHP Code:
[FUNCTION addgold]
LOCAL.AMOUNT <ARGV[0]>
WHILE <
dLOCAL.AMOUNT> > 0
 
IF (<LOCAL.AMOUNT> > 65000)
  
SERV.NEWITEM i_gold
  
NEW.AMOUNT 65000
  LOCAL
.AMOUNT -= 65000
 
ELSE
  
SERV.NEWITEM i_gold
  
NEW.AMOUNT <dLOCAL.AMOUNT>    
  
LOCAL.AMOUNT 0
 
ENDIF
 IF (<
ARGV[1]>)
  NEW.
CONT <ARGV[1]>
 ELSE
  
BOUNCE <NEW>
 ENDIF
ENDWHILE

[
PLEVEL 4]
addgold 
Try this one.


RE: addgold function for vendors - RanXerox - 09-29-2012 10:30 AM

Instead of a custom function, can't you just modify the GOLD directly? For example, instead of:

SRC.addgold 1000000

...use this instead:

SRC.GOLD += 1000000


RE: addgold function for vendors - Lazarus - 09-29-2012 06:34 PM

(09-29-2012 10:30 AM)RanXerox Wrote:  Instead of a custom function, can't you just modify the GOLD directly? For example, instead of:

SRC.addgold 1000000

...use this instead:

SRC.GOLD += 1000000


It's for vendors Tongue

Thanks Extreme! I will try it!


RE: addgold function for vendors - Lazarus - 09-30-2012 06:07 AM

Undefined Symbol ' ' in line :

IF (<ARGV[1]>)


RE: addgold function for vendors - Extreme - 09-30-2012 06:34 AM

.addgold 1000,<uid of vendor>


RE: addgold function for vendors - RanXerox - 09-30-2012 09:29 AM

Try this built-in function to put gold into the backpack:

SRC.NEWGOLD 100000


RE: addgold function for vendors - Lazarus - 09-30-2012 01:17 PM

(09-30-2012 09:29 AM)RanXerox Wrote:  Try this built-in function to put gold into the backpack:

SRC.NEWGOLD 100000

That's not the problem Tongue [thanks anyway! Tongue]

the factor of this is; When you retrieve the gold of the vendor that get with the sells, the addfunction works and give to you the money Shock


RE: addgold function for vendors - RanXerox - 10-01-2012 02:42 AM

You are the guy with the crashing main loop. The most likely cause of that problem is unsafe "while" constructs. I am just giving you alternative suggestions so you can eliminate this function. If you don't want to use those suggestions, that's fine, I will stop with the suggestions.


RE: addgold function for vendors - Mordaunt - 10-01-2012 02:48 AM

It is always better to achieve the end result in the simplest way possible.
If it can be achieved with a single line of code using a built in function, scripting something that is longer and uses loops to acheive the goal is nonsensical.