jupeto
Members-
Content Count
39 -
Joined
-
Last visited
About jupeto
-
Rank
Advanced Member
Profile Information
-
Github
jupeto
Recent Profile Visitors
1669 profile views
-
jupeto reacted to a post in a topic: Hercules Battlegrounds
-
The announces are on purpose, you can change the timing in the bg_common.txt script. at which part? bg_common.txt line 151 // Rotate every n seconds. OnTimer5000: Being 5000 the miliseconds of rotation and announces I see, haha I thought there were some kind of a config or something.... thanks for pointing that out for me much appreciated
-
The announces are on purpose, you can change the timing in the bg_common.txt script. at which part?
-
jupeto started following Hercules Battlegrounds
-
Are these normal? Spams announcement? rush_casXX map? I did recache mapcache.dat
-
I don't know if I'm doing this right So I have a collection of character variable like so; variable_one[0] = value_one variable_two[0] = value_two variable_three[0] = value_three then I'm trying to push some data to it variable_one[getarraysize(variable_one)] = value_one_point_one variable_two[getarraysize(variable_two)] = value_two_point_one variable_three[getarraysize(variable_three)] = value_three_point_one I can see that it saves to my database but when I try to access it and loop like this for (.@i = 0; .@i < getarraysize(variable_one); .@i++) { mes variable_one[.@i]; } end; the result is only one value
-
Thank you for your support, I did manage to get those 3 types already...
-
[Error]: script_rid2sd: fatal error ! player not attached! [Debug]: Function: __setr (2 parameters): [Debug]: Data: variable name='.@blvl' index=0 [Debug]: Data: param name='BaseLevel' type=11 [Debug]: Source (NPC): SamplePartyBaseLevel at prontera (144,282) [Warning]: script_get_val: cannot access player variable 'BaseLevel', defaulting to 0 I only use this code getpartymember(getcharid(CHAR_ID_PARTY)); for (.@i = 0; .@i < $@partymembercount; ++.@i) { dispbottom($@partymemberaid[.@i] + " : " + $@partymembercid[.@i] + " (" + $@partymembername$[.@i]) + ")"; } close; the result of each account id and character id is 0, maybe that's why your code doesn't work... but the member name is OK EDIT 2: I wonder why the code below works, I need to specify all 3 types to get the account id, character id, and character names getpartymember(getcharid(CHAR_ID_PARTY), 0); getpartymember(getcharid(CHAR_ID_PARTY), 1); getpartymember(getcharid(CHAR_ID_PARTY), 2); .@aid = getcharid(CHAR_ID_ACCOUNT); for (.@i = 0; .@i < $@partymembercount; ++.@i) { if (isloggedin($@partymemberaid[.@i], $@partymembercid[.@i])) { detachrid; attachrid($@partymemberaid[.@i]); .@blvl[.@i] = BaseLevel; detachrid; attachrid(.@aid); dispbottom("" + $@partymembername$[.@i] + ": Level " + .@blvl[.@i] + ""); } } close;
-
[Error]: script_rid2sd: fatal error ! player not attached! [Debug]: Function: dispbottom (1 parameter): [Debug]: Data: string value="Jupeto: Level 99" [Debug]: Source (NPC): Teaching Manager at prontera (144,282)
-
Is there a way to determine base and job levels in a party? given the party id or the invoking character? using getpartymember(getcharid(CHAR_ID_PARTY));
-
from an NPC script I have a command that gives cashpoint to a user using #CASHPOINTS += 100; the player's cashpoint increments as seen in the cash shop, but never in Flux credit points
-
This would be *setequipoption(<equip_index>,<slot>,0,0); Already tried that but the console says [Error]: buildin_setequipoption: Option index 0 does not exist! Ah right, then there needs to be a script command for its removal. Yah, hopefully I'm trying to create a new script command for that... Also, can you please help me create a new set of options, both client and server side [EDIT] I successfully added a remove option command, still not sure if it's the best way to do it LOL... I managed to add, remove option with this... ALSO... fixed the (I think a bug) where the equipment is not forcefully equipped to the character after calculating the new stats by storing the current equipped item id of the user in a variable (eid) and use that variable to force equip (pc->equipitem(sd, i, eid);) the item /** * Remove an equipment's option value. * *removeequipoption(<equip_index>,<slot>); * * @param equip_index as the inventory index of the equipment. * @param slot as the slot of the item option (1 to MAX_ITEM_OPTIONS) * @return 0 on failure, 1 on success. */ BUILDIN(removeequipoption) { int equip_index = script_getnum(st, 2); int slot = script_getnum(st, 3); int i = -1; int eid = 0; struct map_session_data *sd = script->rid2sd(st); if (sd == NULL) { script_pushint(st, 0); ShowError("buildin_removeequipoption: Player not attached!\n"); return false; } if (slot <= 0 || slot > MAX_ITEM_OPTIONS) { script_pushint(st, 0); ShowError("buildin_removeequipoption: Invalid option index %d (Min: 1, Max: %d) provided.\n", slot, MAX_ITEM_OPTIONS); return false; } if (equip_index > 0 && equip_index <= ARRAYLENGTH(script->equip)) { if ((i = pc->checkequip(sd, script->equip[equip_index - 1])) == -1) { ShowError("buildin_setequipoptioninfo: No equipment is equipped in the given index %d.\n", equip_index); script_pushint(st, 0); return false; } } else { ShowError("buildin_removeequipoptioninfo: Invalid equipment index %d provided.\n", equip_index); script_pushint(st, 0); return false; } if (sd->status.inventory[i].nameid != 0) { eid = sd->status.inventory[i].equip; // Store the current equipped item id to a variable to use for equiping again after calculating new stats /* Add Option Index */ sd->status.inventory[i].option[slot-1].index = 0; /* Add Option Value */ sd->status.inventory[i].option[slot-1].value = 0; /* Unequip and simulate deletion of the item. */ pc->unequipitem(sd, i, PCUNEQUIPITEM_FORCE); // status calc will happen in pc->equipitem() below clif->refine(sd->fd, 0, i, sd->status.inventory[i].refine); // notify client of a refine. clif->delitem(sd, i, 1, DELITEM_MATERIALCHANGE); // notify client to simulate item deletion. /* Log deletion of the item. */ logs->pick_pc(sd, LOG_TYPE_SCRIPT, -1, &sd->status.inventory[i],sd->inventory_data[i]); /* Equip and simulate addition of the item. */ clif->additem(sd, i, 1, 0); // notify client to simulate item addition. /* Log addition of the item. */ logs->pick_pc(sd, LOG_TYPE_SCRIPT, 1, &sd->status.inventory[i], sd->inventory_data[i]); pc->equipitem(sd, i, eid); // force equip the item at the original position. clif->misceffect(&sd->bl, 2); // show effect } script_pushint(st, 1); return true; } BUILDIN_DEF(removeequipoption, "ii"),
-
This would be *setequipoption(<equip_index>,<slot>,0,0); Already tried that but the console says [Error]: buildin_setequipoption: Option index 0 does not exist!
-
AWESOME ADDITION!!! I'm trying to add a custom option [EnumVAR.VAR_CUSTOMMAXHP[1]] = "Custom MaxHP +%d" but an error comes up after starting the client attempt to index field '?' (a nil value) [EnumVAR.MDAMAGE_SIZE_SMALL_TARGET[1]] = "Magical damage against Small size monster +%d%%", [EnumVAR.MDAMAGE_SIZE_MIDIUM_TARGET[1]] = "Magical damage against Medium size monster +%d%%", [EnumVAR.MDAMAGE_SIZE_LARGE_TARGET[1]] = "Magical damage against Large size monster +%d%%", [EnumVAR.MDAMAGE_SIZE_SMALL_USER[1]] = "Magical resistance Small size monster +%d%%", [EnumVAR.MDAMAGE_SIZE_MIDIUM_USER[1]] = "Magical resistance Medium size monster +%d%%", [EnumVAR.MDAMAGE_SIZE_LARGE_USER[1]] = "Magical resistance Large size monster +%d%%", [EnumVAR.VAR_CUSTOMMAXHP[1]] = "Custom MaxHP +%d", [EnumVAR.EnumVAR_LAST[1]] = "END"} Also, I don't see any command to remove specific item option.
-
Code below stacks the mark icon of exclamation and question mark, the exclamation mark doesn't cleared by the QTYPE_NONE event but without showevent(QTYPE_QUEST2,1);, the script removes the mark icon... what I want to achieve here is that the exclamation mark must be replaced by a question mark icon to indicate that the player still has some quest for that npc and that they need to accept it to proceed... prontera,xxx,xxx,x script NPC1::npc1 4_EP16_LOUVIERE,{ doevent("npc2::OnShowQuest"); } prontera,xxx,xxx,x script NPC2::npc2 4_EP16_LOUVIERE,{ showevent(QTYPE_NONE); showevent(QTYPE_QUEST2,1); end; OnShowQuest: showevent(QTYPE_QUEST,1); end; OnHideQuest: showevent(QTYPE_NONE); end; } Please enlighten me... thanks [EDIT] well I guess sleep2(1); did the job prontera,xxx,xxx,x script NPC1::npc1 4_EP16_LOUVIERE,{ doevent("npc2::OnShowQuest"); } prontera,xxx,xxx,x script NPC2::npc2 4_EP16_LOUVIERE,{ showevent(QTYPE_NONE); sleep2(1); // <------ this did the job, but is this the right thing to do? showevent(QTYPE_QUEST2,1); end; OnShowQuest: showevent(QTYPE_QUEST,1); end; OnHideQuest: showevent(QTYPE_NONE); end; }
-
Hello did you make it work in linux? Yes I did
- 26 replies
-
- rentitem2 plugins
- rentitem2
-
(and 2 more)
Tagged with:
-
Dduwsmitt reacted to a post in a topic: rentitem2 plugins
-
Sorry to bump this but using #CASHPOINTS doesn't affect the credits in FluxCP