about summary refs log tree commit diff
path: root/src/game/editor/editor.cpp
diff options
context:
space:
mode:
authorChoupom <andycootlapin@hotmail.fr>2011-07-18 12:05:12 +0200
committeroy <Tom_Adams@web.de>2011-07-20 22:04:13 +0200
commit84e5c534322940a696d9a915829a5e69e5679a28 (patch)
tree6cfd6f5d8d836f7bf192d186f1fb63a438b1ba7b /src/game/editor/editor.cpp
parentc2e8bf5035cbe3f41a71c454e348fc408f17a991 (diff)
downloadzcatch-84e5c534322940a696d9a915829a5e69e5679a28.tar.gz
zcatch-84e5c534322940a696d9a915829a5e69e5679a28.zip
added color envelope feature for tilemaps
Diffstat (limited to 'src/game/editor/editor.cpp')
-rw-r--r--src/game/editor/editor.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/src/game/editor/editor.cpp b/src/game/editor/editor.cpp
index ecb38444..7453472a 100644
--- a/src/game/editor/editor.cpp
+++ b/src/game/editor/editor.cpp
@@ -190,6 +190,24 @@ void CEditorImage::AnalyseTileFlags()
 
 }
 
+void CEditor::EnvelopeEval(float TimeOffset, int Env, float *pChannels, void *pUser)
+{
+	CEditor *pThis = (CEditor *)pUser;
+	if(Env < 0 || Env > pThis->m_Map.m_lEnvelopes.size())
+	{
+		pChannels[0] = 0;
+		pChannels[1] = 0;
+		pChannels[2] = 0;
+		pChannels[3] = 0;
+		return;
+	}
+
+	CEnvelope *e = pThis->m_Map.m_lEnvelopes[Env];
+	float t = pThis->m_AnimateTime+TimeOffset;
+	t *= pThis->m_AnimateSpeed;
+	e->Eval(t, pChannels);
+}
+
 /********************************************************
  OTHER
 *********************************************************/
@@ -2086,7 +2104,7 @@ void CEditor::RenderLayers(CUIRect ToolBox, CUIRect ToolBar, CUIRect View)
 					m_SelectedGroup = g;
 					static int s_LayerPopupID = 0;
 					if(Result == 2)
-						UiInvokePopupMenu(&s_LayerPopupID, 0, UI()->MouseX(), UI()->MouseY(), 120, 220, PopupLayer);
+						UiInvokePopupMenu(&s_LayerPopupID, 0, UI()->MouseX(), UI()->MouseY(), 120, 245, PopupLayer);
 				}
 
 				LayerCur += 14.0f;