Blockland Forums > Suggestions & Requests
taking event requests
<< < (3/15) > >>
MARBLE MAN:

--- Quote from: Ducky duck on October 27, 2013, 11:07:15 PM ---
--- End quote ---
you're an idiot.


--- Quote from: TristanLuigi on October 27, 2013, 11:12:55 PM ---
--- End quote ---
how would I link this to a brick?
TristanLuigi:

--- Quote from: MARBLE MAN on October 28, 2013, 12:12:24 AM ---you're an idiot.
how would I link this to a brick?


--- End quote ---
It's not specific to the brick, it's like the other onMinigame_____ events.
MARBLE MAN:

--- Quote from: TristanLuigi on October 28, 2013, 12:14:58 AM ---It's not specific to the brick, it's like the other onMinigame_____ events.

--- End quote ---

registerInputEvent(fxDtsBrick,"onMinigameActivate","Self fxDtsBrick\tTargetPlayer Player\tTargetClient GameConnection\tSourcePlayer Player\tSourceClient GameConnection\tMinigame Minigame");
$Event_Minigame::onMinigameActivateList = inputEvent_GetInputEventIdx("onMinigameActivate");
package Event_MinigameActivate
{
   function Player::ActivateStuff(%obj)
   {
      %r=containerRaycast(%obj.getEyePoint(),vectorAdd(%obj.getEyePoint(),vectorScale(%obj.getEyeVector(),10)),%mask,%obj);
      if(isObject(%col=firstWord(%r)))
      {
         if(!isObject(%col.client)||!isObject(%obj.client))
            return;
         if(getMinigameFromObject(%col)==%mini=getMinigameFromObject(%obj))
         {
            for(%i=0;%i<getWordCount($Event_Minigame::onMinigameActivateList);%i++)
            {
               %brick = getWord($Event_Minigame::onMinigameActivateList,%i);
               if(isObject(%brick))
               {
                  if(getMinigameFromObject(getBrickGroupFromObject(%brick)) == %mini)
                  {
                     if(%mini.useAllPlayersBricks || (!%mini.useAllPlayersBricks && getBrickGroupFromObject(%brick) == getBrickGroupFromObject(%client)))
                     {
                        $inputTarget_Self = %brick;
                        $inputTarget_TargetPlayer = %col;
                        $inputTarget_TargetClient = %col.client;
                        $inputTarget_SourcePlayer = %obj;
                        $inputTarget_SourceClient = %obj.client;
                        $inputTarget_Minigame = %mini;
                        %brick.processInputEvent("onMinigameActivate",%obj.client);
                     }
                  }
               }
            }
         }
      }
   }
   function serverCmdAddEvent(%client,%delay,%input,%target,%a,%b,%output,%para1,%para2,%para3,%para4)
   {
      if(%input == $Event_Minigame::onMinigameActivateList)
         $Event_Minigame::onMinigameActivateList = addItemToList($Event_Minigame::onMinigameActivateList,%client.wrenchBrick);
      return Parent::serverCmdAddEvent(%client,%delay,%input,%target,%a,%b,%output,%para1,%para2,%para3,%para4);
   }
   function serverCmdClearEvents(%client)
   {
      if(hasItemOnList($Event_Minigame::onMinigameActivateList,%client.wrenchBrick))
         $Event_Minigame::onMinigameActivateList = removeItemFromList($Event_Minigame::onMinigameActivateList,%client.wrenchBrick);
      Parent::serverCmdClearEvents(%client);
   }
   function fxDtsBrick::onDeath(%brick)
   {
      if(hasItemOnList($Event_Minigame::onMinigameActivateList,%brick))
         $Event_Minigame::onMinigameActivateList = removeItemFromList($Event_Minigame::onMinigameActivateList,%brick);
      Parent::onDeath(%brick);
   }
};
activatePackage(Event_MinigameActivate);
function addItemToList(%string,%item)
{
   if(hasItemOnList(%string,%item))
      return %string;

   if(%string $= "")
      return %item;
   else
      return %string SPC %item;
}
function hasItemOnList(%string,%item)
{
   for(%i=0;%i<getWordCount(%string);%i++)
   {
      if(getWord(%string,%i) $= %item)
         return 1;
   }
   return 0;
}
function removeItemFromList(%string,%item)
{
   if(!hasItemOnList(%string,%item))
      return %string;

   for(%i=0;%i<getWordCount(%string);%i++)
   {
      if(getWord(%string,%i) $= %item)
      {
         if(%i $= 0)
            return getWords(%string,1,getWordCount(%string));
         else if(%i $= getWordCount(%string)-1)
            return getWords(%string,0,%i-1);
         else
            return getWords(%string,0,%i-1) SPC getWords(%string,%i+1,getWordCount(%string));
      }
   }
}

untested... good luck..
.:FancyPants:.:
Type: Output
Name: Brick > TransposeBrick
Description: Moves a brick a certain number of studs according to XYZ output paramaters, Z is in plates height.

ex. OnActivate > Self > Brick > TransposeBrick > 0, 0, 15
would move the brick the events belonged to five whole 1x1 bricks upwards.


i have no clue how add-on making works, but i figure this is possible? i don't see it made anywhere else.
SWAT One:

--- Quote from: MARBLE MAN on October 27, 2013, 05:41:11 PM ---1.1 exists as "Prompt events" or something

--- End quote ---
It does, but the point is that it does not give enough space for writing.  I would like to have enough space for paragraphs.  I've never dealt with GUIs, but I'm pretty sure this should be easy.
Navigation
Message Index
Next page
Previous page

Go to full version