I got it now. triggering just with shapes is possible
if someone is interested in:
just add this script to a pivot object and move it to the position where you want the trigger.
Size can be manipulated in the Script Tab
Press L to show triggers in debug mode
Script.Mapfile = "" --path Map
Script.triggerSize = Vec3(1,1,1) --vec3 TriggerSize
Script.triggerVisible = true --bool ShowTrigger
function Script:Start()
self.enabled=true
if self.triggerVisible then
--Create box
self.box = Model:Box(self.triggerSize.x, self.triggerSize.y, self.triggerSize.z)
self.box:SetPosition(self.entity:GetPosition().x, self.entity:GetPosition().y, self.entity:GetPosition().z)
self.box:SetColor(0,1,0)
end
--Create shape
self.entity:SetCollisionType(Collision.Trigger)
self.shape = Shape:Box(0,0,0, 0,0,0, self.triggerSize.x, self.triggerSize.y, self.triggerSize.z)
self.entity:SetShape(self.shape)
self.shape:Release()
end
function Script:Collision(entity, position, normal, speed)
if self.enabled then
self.component:CallOutputs("Collision")
System:Print("BAZINGA")
if(self.Mapfile) ~= "" then
--do a mapload
end
end
end
function Script:Enable()--in
if self.enabled==false then
self.enabled=true
self:CallOutputs("Enable")
end
end
function Script:Disable()--in
if self.enabled then
self.enabled=false
self:CallOutputs("Disable")
end
end
function Script:UpdateWorld()
if DEBUG then
if App.window:KeyHit(Key.L) then
if self.box == nil then
--Create box
self.box = Model:Box(self.triggerSize.x, self.triggerSize.y, self.triggerSize.z)
self.box:SetPosition(self.entity:GetPosition().x, self.entity:GetPosition().y, self.entity:GetPosition().z)
self.box:SetColor(0,1,0)
self.box:Hide()
end
if self.box:Hidden() then
System:Print("Trigger on")
self.box:Show()
else
System:Print("Trigger off")
self.box:Hide()
end
end
end
end