Merge branch 'master' of github-hazim:HazimGazov/Inertia
This commit is contained in:
@@ -59,6 +59,7 @@ private:
|
||||
BOOL mDoubleClickTeleport;
|
||||
BOOL mHideNotificationsInChat;
|
||||
BOOL mPlayTypingSound;
|
||||
BOOL mDisablePointAtAndBeam;
|
||||
BOOL mPrivateLookAt;
|
||||
BOOL mFetchInventoryOnLogin;
|
||||
BOOL mSecondsInChatAndIMs;
|
||||
@@ -111,6 +112,7 @@ void LLPrefsInertImpl::refreshValues()
|
||||
mDoubleClickTeleport = gSavedSettings.getBOOL("DoubleClickTeleport");
|
||||
mHideNotificationsInChat = gSavedSettings.getBOOL("HideNotificationsInChat");
|
||||
mPlayTypingSound = gSavedSettings.getBOOL("PlayTypingSound");
|
||||
mDisablePointAtAndBeam = gSavedSettings.getBOOL("DisablePointAtAndBeam");
|
||||
mPrivateLookAt = gSavedSettings.getBOOL("PrivateLookAt");
|
||||
mSecondsInChatAndIMs = gSavedSettings.getBOOL("SecondsInChatAndIMs");
|
||||
mFetchInventoryOnLogin = gSavedSettings.getBOOL("FetchInventoryOnLogin");
|
||||
@@ -186,6 +188,7 @@ void LLPrefsInertImpl::cancel()
|
||||
gSavedSettings.setBOOL("DoubleClickTeleport", mDoubleClickTeleport);
|
||||
gSavedSettings.setBOOL("HideNotificationsInChat", mHideNotificationsInChat);
|
||||
gSavedSettings.setBOOL("PlayTypingSound", mPlayTypingSound);
|
||||
gSavedSettings.setBOOL("DisablePointAtAndBeam", mDisablePointAtAndBeam);
|
||||
gSavedSettings.setBOOL("PrivateLookAt", mPrivateLookAt);
|
||||
gSavedSettings.setBOOL("FetchInventoryOnLogin", mFetchInventoryOnLogin);
|
||||
gSavedSettings.setBOOL("SecondsInChatAndIMs", mSecondsInChatAndIMs);
|
||||
|
||||
@@ -136,7 +136,9 @@
|
||||
#include "llappviewer.h"
|
||||
#include "llviewerjoystick.h"
|
||||
#include "llfollowcam.h"
|
||||
|
||||
// <edit>
|
||||
#include "llworldmapmessage.h"
|
||||
// </edit>
|
||||
using namespace LLVOAvatarDefines;
|
||||
|
||||
extern LLMenuBarGL* gMenuBarView;
|
||||
@@ -222,7 +224,6 @@ LLAgent gAgent;
|
||||
|
||||
// <edit>
|
||||
// For MapBlockReply funk 'cause I dunno what I'm doing
|
||||
/* not *quite* there yet, and I don't want to break head.
|
||||
BOOL LLAgent::lure_show = FALSE;
|
||||
std::string LLAgent::lure_name;
|
||||
LLVector3d LLAgent::lure_posglobal;
|
||||
@@ -232,7 +233,7 @@ int LLAgent::lure_x;
|
||||
int LLAgent::lure_y;
|
||||
int LLAgent::lure_z;
|
||||
std::string LLAgent::lure_maturity;
|
||||
*/
|
||||
|
||||
// </edit>
|
||||
|
||||
const F32 LLAgent::TYPING_TIMEOUT_SECS = 5.f;
|
||||
@@ -8019,5 +8020,60 @@ std::string LLAgent::getCapability(const std::string& name) const
|
||||
}
|
||||
return iter->second;
|
||||
}
|
||||
// <edit>
|
||||
|
||||
void LLAgent::showLureDestination(const std::string fromname, const int global_x, const int global_y, const int x, const int y, const int z, const std::string maturity)
|
||||
{
|
||||
const LLVector3d posglobal = LLVector3d(F64(global_x), F64(global_y), F64(0));
|
||||
LLSimInfo* siminfo;
|
||||
siminfo = LLWorldMap::getInstance()->simInfoFromPosGlobal(posglobal);
|
||||
if(siminfo)
|
||||
{
|
||||
llinfos << fromname << "'s teleport lure is to " << siminfo->getName() << " (" << maturity << ")" << llendl;
|
||||
std::string url = LLURLDispatcher::buildSLURL(siminfo->getName(), S32(x), S32(y), S32(z));
|
||||
std::string msg;
|
||||
msg = llformat("%s's teleport lure is to %s", fromname.c_str(), url.c_str());
|
||||
if(maturity != "")
|
||||
msg.append(llformat(" (%s)", maturity.c_str()));
|
||||
LLChat chat(msg);
|
||||
LLFloaterChat::addChat(chat);
|
||||
}
|
||||
else
|
||||
{
|
||||
LLAgent::lure_show = TRUE;
|
||||
LLAgent::lure_name = fromname;
|
||||
LLAgent::lure_posglobal = posglobal;
|
||||
LLAgent::lure_global_x = U16(global_x / 256);
|
||||
LLAgent::lure_global_y = U16(global_y / 256);
|
||||
LLAgent::lure_x = x;
|
||||
LLAgent::lure_y = y;
|
||||
LLAgent::lure_z = z;
|
||||
LLAgent::lure_maturity = maturity;
|
||||
LLWorldMapMessage::getInstance()->sendMapBlockRequest(lure_global_x, lure_global_y, lure_global_x, lure_global_y, true);
|
||||
}
|
||||
}
|
||||
|
||||
void LLAgent::onFoundLureDestination()
|
||||
{
|
||||
LLAgent::lure_show = FALSE;
|
||||
LLSimInfo* siminfo;
|
||||
siminfo = LLWorldMap::getInstance()->simInfoFromPosGlobal(LLAgent::lure_posglobal);
|
||||
if(siminfo)
|
||||
{
|
||||
llinfos << LLAgent::lure_name << "'s teleport lure is to " << siminfo->getName() << " (" << LLAgent::lure_maturity << ")" << llendl;
|
||||
std::string url = LLURLDispatcher::buildSLURL(siminfo->getName(), S32(LLAgent::lure_x), S32(LLAgent::lure_y), S32(LLAgent::lure_z));
|
||||
std::string msg;
|
||||
msg = llformat("%s's teleport lure is to %s", LLAgent::lure_name.c_str(), url.c_str());
|
||||
if(LLAgent::lure_maturity != "")
|
||||
msg.append(llformat(" (%s)", LLAgent::lure_maturity.c_str()));
|
||||
LLChat chat(msg);
|
||||
LLFloaterChat::addChat(chat);
|
||||
}
|
||||
else
|
||||
llwarns << "Grand scheme failed" << llendl;
|
||||
}
|
||||
|
||||
// </edit>
|
||||
|
||||
// EOF
|
||||
|
||||
|
||||
@@ -775,6 +775,18 @@ public:
|
||||
|
||||
BOOL mInitialized;
|
||||
|
||||
// <edit>
|
||||
static BOOL lure_show;
|
||||
static std::string lure_name;
|
||||
static LLVector3d lure_posglobal;
|
||||
static U16 lure_global_x;
|
||||
static U16 lure_global_y;
|
||||
static int lure_x;
|
||||
static int lure_y;
|
||||
static int lure_z;
|
||||
static std::string lure_maturity;
|
||||
// </edit>
|
||||
|
||||
S32 mNumPendingQueries;
|
||||
S32* mActiveCacheQueries;
|
||||
|
||||
@@ -789,6 +801,11 @@ public:
|
||||
|
||||
LLFrameTimer mDoubleTapRunTimer;
|
||||
EDoubleTapRunMode mDoubleTapRunMode;
|
||||
|
||||
// <edit>
|
||||
static void showLureDestination(const std::string fromname, const int global_x, const int global_y, const int x, const int y, const int z, const std::string maturity);
|
||||
static void onFoundLureDestination();
|
||||
// </edit>
|
||||
|
||||
private:
|
||||
bool mbTeleportKeepsLookAt; // try to keep look-at after teleport is complete
|
||||
|
||||
@@ -118,6 +118,12 @@ BOOL LLPanelObject::postBuild()
|
||||
mCheckPhysics = getChild<LLCheckBoxCtrl>("Physical Checkbox Ctrl");
|
||||
childSetCommitCallback("Physical Checkbox Ctrl",onCommitPhysics,this);
|
||||
|
||||
//Blink [SimmanFederal] Inspired by VLife/Oynx
|
||||
mClickBlink = getChild<LLButton>("button blink");
|
||||
childSetAction("button blink",&onClickBlink,this);
|
||||
mClickHardBlink = getChild<LLButton>("button blink hard");
|
||||
childSetAction("button blink hard",&onClickHardBlink,this);
|
||||
|
||||
// Temporary checkbox
|
||||
mCheckTemporary = getChild<LLCheckBoxCtrl>("Temporary Checkbox Ctrl");
|
||||
childSetCommitCallback("Temporary Checkbox Ctrl",onCommitTemporary,this);
|
||||
@@ -164,8 +170,8 @@ BOOL LLPanelObject::postBuild()
|
||||
mComboMaterial = getChild<LLComboBox>("material");
|
||||
childSetCommitCallback("material",onCommitMaterial,this);
|
||||
mComboMaterial->removeall();
|
||||
// <edit>
|
||||
/*
|
||||
// <edit>
|
||||
/*
|
||||
// *TODO:translate
|
||||
for (LLMaterialTable::info_list_t::iterator iter = LLMaterialTable::basic.mMaterialInfoList.begin();
|
||||
iter != LLMaterialTable::basic.mMaterialInfoList.end(); ++iter)
|
||||
@@ -176,12 +182,12 @@ BOOL LLPanelObject::postBuild()
|
||||
mComboMaterial->add(minfop->mName);
|
||||
}
|
||||
}
|
||||
*/
|
||||
for(U8 mcode = 0; mcode < 0x10; mcode++)
|
||||
{
|
||||
mComboMaterial->add(LLMaterialTable::basic.getName(mcode));
|
||||
}
|
||||
// </edit>
|
||||
*/
|
||||
for(U8 mcode = 0; mcode < 0x10; mcode++)
|
||||
{
|
||||
mComboMaterial->add(LLMaterialTable::basic.getName(mcode));
|
||||
}
|
||||
// </edit>
|
||||
mComboMaterialItemCount = mComboMaterial->getItemCount();
|
||||
|
||||
// Base Type
|
||||
@@ -370,19 +376,26 @@ void LLPanelObject::getState( )
|
||||
}
|
||||
|
||||
// can move or rotate only linked group with move permissions, or sub-object with move and modify perms
|
||||
// <edit>
|
||||
// Enables position, size, and rotation textboxes
|
||||
// but they're also editable
|
||||
// No arrow crap though
|
||||
/*
|
||||
// <edit>
|
||||
// Enables position, size, and rotation textboxes
|
||||
// but they're also editable
|
||||
// No arrow crap though
|
||||
/*
|
||||
BOOL enable_move = objectp->permMove() && !objectp->isAttachment() && (objectp->permModify() || !gSavedSettings.getBOOL("EditLinkedParts"));
|
||||
BOOL enable_scale = objectp->permMove() && objectp->permModify();
|
||||
BOOL enable_rotate = objectp->permMove() && ( (objectp->permModify() && !objectp->isAttachment()) || !gSavedSettings.getBOOL("EditLinkedParts"));
|
||||
*/
|
||||
BOOL enable_move = TRUE;
|
||||
BOOL enable_scale = TRUE;
|
||||
BOOL enable_rotate = TRUE;
|
||||
// </edit>
|
||||
*/
|
||||
BOOL enable_move = TRUE;
|
||||
BOOL enable_scale = TRUE;
|
||||
BOOL enable_rotate = TRUE;
|
||||
// </edit>
|
||||
|
||||
//[SimmanFederal]: Adding permission check to see if we can even BLINK anything not just atempting to blink even no mod sheit.
|
||||
//Also a link check. (lol from the orginal enable_move bool <3)
|
||||
BOOL sfBlinkOk = objectp->permMove() && !objectp->isAttachment() && (objectp->permModify() || !gSavedSettings.getBOOL("EditLinkedParts"));
|
||||
childSetEnabled("button blink", sfBlinkOk);
|
||||
childSetEnabled("button blink hard", sfBlinkOk);
|
||||
//[/SimmanFederal]
|
||||
|
||||
S32 selected_count = LLSelectMgr::getInstance()->getSelection()->getObjectCount();
|
||||
BOOL single_volume = (LLSelectMgr::getInstance()->selectionAllPCode( LL_PCODE_VOLUME ))
|
||||
@@ -467,15 +480,15 @@ void LLPanelObject::getState( )
|
||||
|
||||
// BUG? Check for all objects being editable?
|
||||
S32 roots_selected = LLSelectMgr::getInstance()->getSelection()->getRootObjectCount();
|
||||
// <edit>
|
||||
// Makes status and material available
|
||||
// I would like it if they were semi-gray, you could copy the value,
|
||||
// but not editable
|
||||
|
||||
//BOOL editable = root_objectp->permModify();
|
||||
BOOL editable = TRUE;
|
||||
|
||||
// </edit>
|
||||
// <edit>
|
||||
// Makes status and material available
|
||||
// I would like it if they were semi-gray, you could copy the value,
|
||||
// but not editable
|
||||
|
||||
//BOOL editable = root_objectp->permModify();
|
||||
BOOL editable = TRUE;
|
||||
|
||||
// </edit>
|
||||
|
||||
// Select Single Message
|
||||
childSetVisible("select_single", FALSE);
|
||||
@@ -561,8 +574,8 @@ void LLPanelObject::getState( )
|
||||
{
|
||||
mComboMaterial->setEnabled( TRUE );
|
||||
mLabelMaterial->setEnabled( TRUE );
|
||||
// <edit>
|
||||
/*
|
||||
// <edit>
|
||||
/*
|
||||
if (material_code == LL_MCODE_LIGHT)
|
||||
{
|
||||
if (mComboMaterial->getItemCount() == mComboMaterialItemCount)
|
||||
@@ -580,9 +593,9 @@ void LLPanelObject::getState( )
|
||||
// *TODO:Translate
|
||||
mComboMaterial->setSimple(std::string(LLMaterialTable::basic.getName(material_code)));
|
||||
}
|
||||
*/
|
||||
mComboMaterial->setSimple(std::string(LLMaterialTable::basic.getName(material_code)));
|
||||
// </edit>
|
||||
*/
|
||||
mComboMaterial->setSimple(std::string(LLMaterialTable::basic.getName(material_code)));
|
||||
// </edit>
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -752,11 +765,11 @@ void LLPanelObject::getState( )
|
||||
// Cut interpretation varies based on base object type
|
||||
F32 cut_begin, cut_end, adv_cut_begin, adv_cut_end;
|
||||
|
||||
// <edit>
|
||||
//if ( selected_item == MI_SPHERE || selected_item == MI_TORUS ||
|
||||
// selected_item == MI_TUBE || selected_item == MI_RING )
|
||||
if(!linear_path)
|
||||
// </edit>
|
||||
// <edit>
|
||||
//if ( selected_item == MI_SPHERE || selected_item == MI_TORUS ||
|
||||
// selected_item == MI_TUBE || selected_item == MI_RING )
|
||||
if(!linear_path)
|
||||
// </edit>
|
||||
{
|
||||
cut_begin = begin_t;
|
||||
cut_end = end_t;
|
||||
@@ -780,10 +793,10 @@ void LLPanelObject::getState( )
|
||||
F32 twist = volume_params.getTwist();
|
||||
F32 twist_begin = volume_params.getTwistBegin();
|
||||
// Check the path type for conversion.
|
||||
// <edit>
|
||||
//if (path == LL_PCODE_PATH_LINE || path == LL_PCODE_PATH_FLEXIBLE)
|
||||
if(linear_path)
|
||||
// </edit>
|
||||
// <edit>
|
||||
//if (path == LL_PCODE_PATH_LINE || path == LL_PCODE_PATH_FLEXIBLE)
|
||||
if(linear_path)
|
||||
// </edit>
|
||||
{
|
||||
twist *= OBJECT_TWIST_LINEAR_MAX;
|
||||
twist_begin *= OBJECT_TWIST_LINEAR_MAX;
|
||||
@@ -876,11 +889,11 @@ void LLPanelObject::getState( )
|
||||
BOOL top_shear_x_visible = TRUE;
|
||||
BOOL top_shear_y_visible = TRUE;
|
||||
BOOL twist_visible = TRUE;
|
||||
// <edit>
|
||||
// Enable advanced cut (aka dimple, aka path, aka profile cut) for everything
|
||||
//BOOL advanced_cut_visible = FALSE;
|
||||
BOOL advanced_cut_visible = TRUE;
|
||||
// </edit>
|
||||
// <edit>
|
||||
// Enable advanced cut (aka dimple, aka path, aka profile cut) for everything
|
||||
//BOOL advanced_cut_visible = FALSE;
|
||||
BOOL advanced_cut_visible = TRUE;
|
||||
// </edit>
|
||||
BOOL taper_visible = FALSE;
|
||||
BOOL skew_visible = FALSE;
|
||||
BOOL radius_offset_visible = FALSE;
|
||||
@@ -1464,13 +1477,13 @@ void LLPanelObject::getVolumeParams(LLVolumeParams& volume_params)
|
||||
F32 begin_s, end_s;
|
||||
F32 begin_t, end_t;
|
||||
|
||||
// <edit>
|
||||
//if (selected_type == MI_SPHERE || selected_type == MI_TORUS ||
|
||||
// selected_type == MI_TUBE || selected_type == MI_RING)
|
||||
BOOL linear_path = (path == LL_PCODE_PATH_LINE) ||
|
||||
(path == LL_PCODE_PATH_FLEXIBLE);
|
||||
if(!linear_path)
|
||||
// </edit>
|
||||
// <edit>
|
||||
//if (selected_type == MI_SPHERE || selected_type == MI_TORUS ||
|
||||
// selected_type == MI_TUBE || selected_type == MI_RING)
|
||||
BOOL linear_path = (path == LL_PCODE_PATH_LINE) ||
|
||||
(path == LL_PCODE_PATH_FLEXIBLE);
|
||||
if(!linear_path)
|
||||
// </edit>
|
||||
{
|
||||
begin_s = adv_cut_begin;
|
||||
end_s = adv_cut_end;
|
||||
@@ -1741,10 +1754,10 @@ void LLPanelObject::sendPosition(BOOL btn_down)
|
||||
// Clamp the Z height
|
||||
const F32 height = newpos.mV[VZ];
|
||||
const F32 min_height = LLWorld::getInstance()->getMinAllowedZ(mObject);
|
||||
// <edit>
|
||||
//const F32 max_height = LLWorld::getInstance()->getRegionMaxHeight();
|
||||
const F32 max_height = F32(340282346638528859811704183484516925440.0f);
|
||||
// </edit>
|
||||
// <edit>
|
||||
//const F32 max_height = LLWorld::getInstance()->getRegionMaxHeight();
|
||||
const F32 max_height = F32(340282346638528859811704183484516925440.0f);
|
||||
// </edit>
|
||||
|
||||
if (!mObject->isAttachment())
|
||||
{
|
||||
@@ -2064,6 +2077,42 @@ void LLPanelObject::onCommitSculpt( LLUICtrl* ctrl, void* userdata )
|
||||
self->sendSculpt();
|
||||
}
|
||||
|
||||
//moved the Blink code below the Commit voids, Sorry about that. ~[SimmanFederal]
|
||||
//[SimmanFederal] Blinking function. Inspired by VLife/Oynx.
|
||||
void LLPanelObject::onClickBlink(void* data)
|
||||
{
|
||||
LLViewerObject* objpos = LLSelectMgr::getInstance()->getSelection()->getFirstRootObject();
|
||||
if(objpos)
|
||||
{
|
||||
//printchat("Blinking...");//yes I'm too lasy to add the system chat set up to a header
|
||||
LLVector3 pos = objpos->getPosition();//get the x and the y
|
||||
pos.mV[VZ] = 340282346638528859811704183484516925440.0f;//create the z
|
||||
objpos->setPositionParent(pos);//set the x y z
|
||||
LLSelectMgr::getInstance()->sendMultipleUpdate(UPD_POSITION);//send the data
|
||||
}
|
||||
}
|
||||
|
||||
//[SimmanFederal] HARD-Blinking function. I thought about it while fapping.
|
||||
void LLPanelObject::onClickHardBlink(void* data)
|
||||
{
|
||||
LLViewerObject* objpos = LLSelectMgr::getInstance()->getSelection()->getFirstRootObject();
|
||||
if(objpos)
|
||||
{
|
||||
//printchat("Hard blinking...");//yes I'm too lasy to add the system chat set up to a header
|
||||
/*
|
||||
NOTE: Temporary objects, when thrown off world/put off world,
|
||||
do not report back to the viewer, nor go to lost and found.
|
||||
|
||||
So we do selectionUpdateTemporary(1)
|
||||
*/
|
||||
LLSelectMgr::getInstance()->selectionUpdateTemporary(1);//set temp to TRUE
|
||||
LLVector3 pos = objpos->getPosition();//get the x and the y
|
||||
pos.mV[VZ] = 340282346638528859811704183484516925440.0f;//create the z
|
||||
objpos->setPositionParent(pos);//set the x y z
|
||||
LLSelectMgr::getInstance()->sendMultipleUpdate(UPD_POSITION);//send the data
|
||||
}
|
||||
}
|
||||
|
||||
// static
|
||||
BOOL LLPanelObject::onDropSculpt(LLUICtrl*, LLInventoryItem* item, void* userdata)
|
||||
{
|
||||
|
||||
@@ -65,6 +65,9 @@ public:
|
||||
|
||||
static BOOL precommitValidate(LLUICtrl* ctrl,void* userdata);
|
||||
|
||||
static void onClickBlink(void* userdata);//[SimmanFederal] Blinking
|
||||
static void onClickHardBlink(void* userdata);//[SimmanFederal] Griefer Blinking
|
||||
|
||||
static void onCommitLock(LLUICtrl *ctrl, void *data);
|
||||
static void onCommitPosition( LLUICtrl* ctrl, void* userdata);
|
||||
static void onCommitScale( LLUICtrl* ctrl, void* userdata);
|
||||
@@ -151,6 +154,9 @@ protected:
|
||||
LLSpinCtrl* mCtrlPosX;
|
||||
LLSpinCtrl* mCtrlPosY;
|
||||
LLSpinCtrl* mCtrlPosZ;
|
||||
//VLife/Oynx Inspriation. IT BLINKS PRIMS TO 340282346638528859811704183484516925440.0f METERS. HERP.
|
||||
LLButton* mClickBlink;//[SimmanFederal]
|
||||
LLButton* mClickHardBlink;//[SimmanFederal]
|
||||
|
||||
LLTextBox* mLabelSize;
|
||||
LLSpinCtrl* mCtrlScaleX;
|
||||
|
||||
@@ -139,8 +139,8 @@
|
||||
#include "llviewerdisplay.h"
|
||||
#include "llkeythrottle.h"
|
||||
#include "lltranslate.h"
|
||||
// <edit>
|
||||
#include "llviewernetwork.h"
|
||||
// <edit>
|
||||
#include "llviewernetwork.h"
|
||||
// </edit>
|
||||
|
||||
#include <boost/tokenizer.hpp>
|
||||
@@ -264,10 +264,10 @@ static LLNotificationFunctorRegistration friendship_offer_callback_reg_nm("Offer
|
||||
void give_money(const LLUUID& uuid, LLViewerRegion* region, S32 amount, BOOL is_group,
|
||||
S32 trx_type, const std::string& desc)
|
||||
{
|
||||
// <edit>
|
||||
//if(0 == amount || !region) return;
|
||||
if(!region) return;
|
||||
// </edit>
|
||||
// <edit>
|
||||
//if(0 == amount || !region) return;
|
||||
if(!region) return;
|
||||
// </edit>
|
||||
amount = abs(amount);
|
||||
LL_INFOS("Messaging") << "give_money(" << uuid << "," << amount << ")"<< LL_ENDL;
|
||||
if(can_afford_transaction(amount))
|
||||
@@ -1204,10 +1204,10 @@ bool LLOfferInfo::inventory_offer_callback(const LLSD& notification, const LLSD&
|
||||
|
||||
log_message = "You decline " + mDesc + " from " + mFromName + ".";
|
||||
chat.mText = log_message;
|
||||
// <edit>
|
||||
//if( LLMuteList::getInstance()->isMuted(mFromID ) && ! LLMuteList::getInstance()->isLinden(mFromName) ) // muting for SL-42269
|
||||
if( LLMuteList::getInstance()->isMuted(mFromID) ) // muting for SL-42269
|
||||
// </edit>
|
||||
// <edit>
|
||||
//if( LLMuteList::getInstance()->isMuted(mFromID ) && ! LLMuteList::getInstance()->isLinden(mFromName) ) // muting for SL-42269
|
||||
if( LLMuteList::getInstance()->isMuted(mFromID) ) // muting for SL-42269
|
||||
// </edit>
|
||||
{
|
||||
chat.mMuted = TRUE;
|
||||
}
|
||||
@@ -1466,21 +1466,21 @@ void process_improved_im(LLMessageSystem *msg, void **user_data)
|
||||
msg->getVector3Fast(_PREHASH_MessageBlock, _PREHASH_Position, position);
|
||||
msg->getBinaryDataFast( _PREHASH_MessageBlock, _PREHASH_BinaryBucket, binary_bucket, 0, 0, MTUBYTES);
|
||||
binary_bucket_size = msg->getSizeFast(_PREHASH_MessageBlock, _PREHASH_BinaryBucket);
|
||||
EInstantMessage dialog = (EInstantMessage)d;
|
||||
|
||||
// <edit>
|
||||
llinfos << "RegionID: " << region_id.asString() << llendl;
|
||||
// </edit>
|
||||
EInstantMessage dialog = (EInstantMessage)d;
|
||||
|
||||
// <edit>
|
||||
llinfos << "RegionID: " << region_id.asString() << llendl;
|
||||
// </edit>
|
||||
|
||||
BOOL is_busy = gAgent.getBusy();
|
||||
BOOL is_muted = LLMuteList::getInstance()->isMuted(from_id, name, LLMute::flagTextChat);
|
||||
BOOL is_linden = LLMuteList::getInstance()->isLinden(name);
|
||||
BOOL is_owned_by_me = FALSE;
|
||||
|
||||
// <edit>
|
||||
//chat.mMuted = is_muted && !is_linden;
|
||||
chat.mMuted = is_muted;
|
||||
// </edit>
|
||||
// <edit>
|
||||
//chat.mMuted = is_muted && !is_linden;
|
||||
chat.mMuted = is_muted;
|
||||
// </edit>
|
||||
chat.mFromID = from_id;
|
||||
chat.mFromName = name;
|
||||
chat.mSourceType = (from_id.isNull() || (name == std::string(SYSTEM_FROM))) ? CHAT_SOURCE_SYSTEM : CHAT_SOURCE_AGENT;
|
||||
@@ -2024,6 +2024,64 @@ void process_improved_im(LLMessageSystem *msg, void **user_data)
|
||||
payload["lure_id"] = session_id;
|
||||
payload["godlike"] = FALSE;
|
||||
LLNotifications::instance().add("TeleportOffered", args, payload);
|
||||
// <edit>
|
||||
if(binary_bucket_size)
|
||||
{
|
||||
char* dest = new char[binary_bucket_size];
|
||||
strncpy(dest, (char*)binary_bucket, binary_bucket_size-1); /* Flawfinder: ignore */
|
||||
dest[binary_bucket_size-1] = '\0';
|
||||
|
||||
llinfos << "IM_LURE_USER binary_bucket " << dest << llendl;
|
||||
|
||||
std::string str(dest);
|
||||
typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
|
||||
boost::char_separator<char> sep("|","",boost::keep_empty_tokens);
|
||||
tokenizer tokens(str, sep);
|
||||
tokenizer::iterator iter = tokens.begin();
|
||||
std::string global_x_str(*iter++);
|
||||
std::string global_y_str(*iter++);
|
||||
std::string x_str(*iter++);
|
||||
std::string y_str(*iter++);
|
||||
std::string z_str(*iter++);
|
||||
// skip what I think must be LookAt
|
||||
if(iter != tokens.end())
|
||||
iter++; // x
|
||||
if(iter != tokens.end())
|
||||
iter++; // y
|
||||
if(iter != tokens.end())
|
||||
iter++; // z
|
||||
std::string mat_str("");
|
||||
if(iter != tokens.end())
|
||||
mat_str.assign(*iter++);
|
||||
mat_str = utf8str_trim(mat_str);
|
||||
|
||||
llinfos << "IM_LURE_USER tokenized " << global_x_str << "|" << global_y_str << "|" << x_str << "|" << y_str << "|" << z_str << "|" << mat_str << llendl;
|
||||
|
||||
std::istringstream gxstr(global_x_str);
|
||||
int global_x;
|
||||
gxstr >> global_x;
|
||||
|
||||
std::istringstream gystr(global_y_str);
|
||||
int global_y;
|
||||
gystr >> global_y;
|
||||
|
||||
std::istringstream xstr(x_str);
|
||||
int x;
|
||||
xstr >> x;
|
||||
|
||||
std::istringstream ystr(y_str);
|
||||
int y;
|
||||
ystr >> y;
|
||||
|
||||
std::istringstream zstr(z_str);
|
||||
int z;
|
||||
zstr >> z;
|
||||
|
||||
llinfos << "IM_LURE_USER parsed " << global_x << "|" << global_y << "|" << x << "|" << y << "|" << z << "|" << mat_str << llendl;
|
||||
|
||||
gAgent.showLureDestination(name, global_x, global_y, x, y, z, mat_str);
|
||||
}
|
||||
// </edit>
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -2347,19 +2405,19 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
|
||||
msg->getUUID("ChatData", "SourceID", from_id);
|
||||
chat.mFromID = from_id;
|
||||
|
||||
// <edit>
|
||||
// this chatter assignment is moved from below
|
||||
// <edit>
|
||||
// this chatter assignment is moved from below
|
||||
chatter = gObjectList.findObject(from_id);
|
||||
/*
|
||||
if(chatter)
|
||||
{
|
||||
if(chatter->isAvatar())
|
||||
{
|
||||
((LLVOAvatar*)chatter)->resetIdleTime();
|
||||
}
|
||||
/*
|
||||
if(chatter)
|
||||
{
|
||||
if(chatter->isAvatar())
|
||||
{
|
||||
((LLVOAvatar*)chatter)->resetIdleTime();
|
||||
}
|
||||
}
|
||||
*/
|
||||
// </edit>
|
||||
*/
|
||||
// </edit>
|
||||
// Object owner for objects
|
||||
msg->getUUID("ChatData", "OwnerID", owner_id);
|
||||
|
||||
@@ -2387,10 +2445,10 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
|
||||
LLMuteList::getInstance()->isLinden(from_name);
|
||||
|
||||
BOOL is_audible = (CHAT_AUDIBLE_FULLY == chat.mAudible);
|
||||
// <edit>
|
||||
// because I moved it to above
|
||||
//chatter = gObjectList.findObject(from_id);
|
||||
// </edit>
|
||||
// <edit>
|
||||
// because I moved it to above
|
||||
//chatter = gObjectList.findObject(from_id);
|
||||
// </edit>
|
||||
if (chatter)
|
||||
{
|
||||
chat.mPosAgent = chatter->getPositionAgent();
|
||||
@@ -2560,17 +2618,17 @@ void process_chat_from_simulator(LLMessageSystem *msg, void **user_data)
|
||||
// F T T T * No No
|
||||
// T * * * F Yes Yes
|
||||
|
||||
// <edit>
|
||||
//chat.mMuted = is_muted && !is_linden;
|
||||
chat.mMuted = is_muted;
|
||||
// </edit>
|
||||
// <edit>
|
||||
//chat.mMuted = is_muted && !is_linden;
|
||||
chat.mMuted = is_muted;
|
||||
// </edit>
|
||||
|
||||
|
||||
if (!visible_in_chat_bubble
|
||||
// <edit>
|
||||
// && (is_linden || !is_busy || is_owned_by_me))
|
||||
&& (!is_busy || is_owned_by_me))
|
||||
// </edit>
|
||||
// <edit>
|
||||
// && (is_linden || !is_busy || is_owned_by_me))
|
||||
&& (!is_busy || is_owned_by_me))
|
||||
// </edit>
|
||||
{
|
||||
// show on screen and add to history
|
||||
check_translate_chat(mesg, chat, FALSE);
|
||||
@@ -3196,15 +3254,15 @@ void send_agent_update(BOOL force_send, BOOL send_reliable)
|
||||
// If a modifier key is held down, turn off
|
||||
// LBUTTON and ML_LBUTTON so that using the camera (alt-key) doesn't
|
||||
// trigger a control event.
|
||||
U32 control_flags = gAgent.getControlFlags();
|
||||
|
||||
// <edit>
|
||||
if(gSavedSettings.getBOOL("Nimble"))
|
||||
{
|
||||
control_flags |= AGENT_CONTROL_FINISH_ANIM;
|
||||
}
|
||||
U32 control_flags = gAgent.getControlFlags();
|
||||
|
||||
// <edit>
|
||||
if(gSavedSettings.getBOOL("Nimble"))
|
||||
{
|
||||
control_flags |= AGENT_CONTROL_FINISH_ANIM;
|
||||
}
|
||||
// </edit>
|
||||
|
||||
|
||||
MASK key_mask = gKeyboard->currentMask(TRUE);
|
||||
if (key_mask & MASK_ALT || key_mask & MASK_CONTROL)
|
||||
{
|
||||
@@ -3576,8 +3634,8 @@ void process_sound_trigger(LLMessageSystem *msg, void **)
|
||||
return;
|
||||
}
|
||||
|
||||
// <edit>
|
||||
gAudiop->triggerSound(sound_id, owner_id, gain, LLAudioEngine::AUDIO_TYPE_SFX, pos_global);
|
||||
// <edit>
|
||||
gAudiop->triggerSound(sound_id, owner_id, gain, LLAudioEngine::AUDIO_TYPE_SFX, pos_global);
|
||||
//gAudiop->triggerSound(sound_id, owner_id, gain, LLAudioEngine::AUDIO_TYPE_SFX, pos_global, object_id);
|
||||
// </edit>
|
||||
}
|
||||
|
||||
@@ -228,6 +228,15 @@ void LLWorldMapMessage::processMapBlockReply(LLMessageSystem* msg, void**)
|
||||
callback(handle, LLWorldMapMessage::getInstance()->mSLURL, image_id, LLWorldMapMessage::getInstance()->mSLURLTeleport);
|
||||
}
|
||||
}
|
||||
// <edit>
|
||||
if(LLAgent::lure_show)
|
||||
{
|
||||
if((x_regions == LLAgent::lure_global_x) && (y_regions == LLAgent::lure_global_y))
|
||||
{
|
||||
gAgent.onFoundLureDestination();
|
||||
}
|
||||
}
|
||||
// </edit>
|
||||
}
|
||||
// Tell the UI to update itself
|
||||
gFloaterWorldMap->updateSims(found_null_sim);
|
||||
|
||||
@@ -910,7 +910,14 @@
|
||||
<combo_item name="Cylinder" value="Cylinder">
|
||||
Cylinder
|
||||
</combo_item>
|
||||
</combo_box>
|
||||
</combo_box><!-- [SimmanFederal] Super-Blink Button -->
|
||||
<button bottom="-25" follows="left|top" font="SansSerifSmall" halign="center"
|
||||
height="20" label="Hard-Blink" label_selected="Hard-Blink" left="140"
|
||||
mouse_opaque="true" name="button blink hard" scale_image="TRUE" width="65" />
|
||||
<!-- [SimmanFederal] Blink Button -->
|
||||
<button bottom="-25" follows="left|top" font="SansSerifSmall" halign="center"
|
||||
height="20" label="Blink" label_selected="Blink" left="205"
|
||||
mouse_opaque="true" name="button blink" scale_image="TRUE" width="55" />
|
||||
</panel>
|
||||
|
||||
<!-- Features sub-tab -->
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
|
||||
<panel top="20" left="10" height="400" width="517" follows="left|top|right|bottom"
|
||||
border="true" label="Inert Prefs" name="inert" enabled="true" mouse_opaque="true">
|
||||
<tab_container label="Inertia" bottom="0" height="408" width="500" left="0"
|
||||
<tab_container label="Inertia" bottom="0" height="440" width="500" left="0"
|
||||
name="Inert Prefs" tab_min_width="90" tab_position="top">
|
||||
<panel border="true" left="1" bottom="-408" height="408" width="500" mouse_opaque="true"
|
||||
follows="left|top|right|bottom" label="User Interface" name="User Interface">
|
||||
@@ -127,12 +127,17 @@
|
||||
width="400" />
|
||||
<check_box bottom_delta="-20" control_name="BroadcastViewerEffects" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16" initial_value="true"
|
||||
label="Broadcast Viewer Effects" left="10"
|
||||
label="Broadcast Viewer Effects (Does not include beams)" left="10"
|
||||
mouse_opaque="true" name="broadcast_viewer_effects" radio_style="false"
|
||||
width="400" />
|
||||
<check_box bottom_delta="-20" control_name="DisablePointAtAndBeam" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16" initial_value="true"
|
||||
label="Disable Point At And Beam" left="10"
|
||||
mouse_opaque="true" name="disable_point_at_and_beams_check" radio_style="false"
|
||||
width="400" />
|
||||
<check_box bottom_delta="-20" control_name="PrivateLookAt" enabled="true"
|
||||
follows="left|top" font="SansSerifSmall" height="16" initial_value="false"
|
||||
label="Do not look at or point to objects (defeats ShowLookAt)" left="10"
|
||||
label="Do not look at to objects (defeats ShowLookAt)" left="10"
|
||||
mouse_opaque="true" name="private_look_at_check" radio_style="false"
|
||||
width="400" />
|
||||
<check_box bottom_delta="-20" control_name="RevokePermsOnStandUp" enabled="true"
|
||||
|
||||
Reference in New Issue
Block a user