Gianluca

Members
  • Content count

    8
  • Joined

  • Last visited

About Gianluca

  • Rank
    Newbie

Profile Information

  • Gender
    Not Telling
  • Emulator:
    Hercules
  1. What I usually do in cases like yours is to use attachrid() on every index of the info arrays, then do something for each player In your case, I think that you will need to run this loop twice: on the first time, you will for(blablabla){ attachrid(); if(BloodQuest != 6){ announce strcharinfo(0)+" needs to talk to the NPC first"; end; } } then in the second loop for(blablabla){ attachrid(); warp "map", x, y; } That way you wont need to use SQL. Search in the forum/downloads for the addrid() script command (plugin?), it may help a bit.
  2. Hmm I'll check it if it works it will solve this kind of problem for me. Thank you o/
  3. Oh :/ Well, that would be useful when using menus inside loops, because it prints each message line after line and, after some time, you need to scroll down the message window, and using a next button in this case would make things a bit annoying (extra click).
  4. Good morning Anyone knows if is there anyway to clear a message window without using the next/close buttons (followed by another mes command)? Thanks o/
  5. I'm not sure if I understood what you want. If you are talking about day/night time durations, there is a configuration somewhere to modify it. But if you are talking about making the time go faster, I think it is not "possible", but you could do it from zero with a NPC controlling it. Since the time you want is 1/12 of the original, maybe a npc that triggers every 83 ms (OnTimer83:) could increase a variable for seconds by 1, then after 3 increases it increase again to avoid desynchronization. OnTimer83: ++$sec; ++$secsinc; if($secsinc == 3){ $secsinc = 0; ++$sec; } initnpctimer; then do the rest for minutes, hours, etc.
  6. If the items can be repeated: setarray .@items , ....; for(.@i = 0; .@i < 5; ++.@i) getitem .@items[rand(getarraysize(.@items))],1; end;/close; If they cant be repeated: setarray .@items , ....; for(.@i = 0; .@i < 5; ++.@i){ .@removed = rand(getarraysize(.@items)); getitem .@items[.@removed],1; deletearray .@items[.@removed],1; } end;/close; just be sure that you use setarray everytime the script is called, since it removes from the array :3