psu_missions: Added The Black Nest. Slightly better traps handling.
Not much is working there though.
This commit is contained in:
parent
a6184ed532
commit
49016cafaa
@ -125,6 +125,26 @@
|
|||||||
%~ {1001223, [{type, mission}, {file, "data/missions/true-darkness.3.s.quest.nbl"}, {start, [0, 802, 0]}]},
|
%~ {1001223, [{type, mission}, {file, "data/missions/true-darkness.3.s.quest.nbl"}, {start, [0, 802, 0]}]},
|
||||||
{1001224, [{type, mission}, {file, "data/missions/true-darkness.3.s2.quest.nbl"}, {start, [0, 802, 0]}]},
|
{1001224, [{type, mission}, {file, "data/missions/true-darkness.3.s2.quest.nbl"}, {start, [0, 802, 0]}]},
|
||||||
|
|
||||||
|
% The Black Nest
|
||||||
|
|
||||||
|
{1003000, [{type, mission}, {file, "data/missions/black-nest.1.c.quest.nbl"}, {start, [0, 6301, 0]}]},
|
||||||
|
{1003001, [{type, mission}, {file, "data/missions/black-nest.1.b.quest.nbl"}, {start, [0, 6301, 0]}]},
|
||||||
|
{1003002, [{type, mission}, {file, "data/missions/black-nest.1.a.quest.nbl"}, {start, [0, 6301, 0]}]},
|
||||||
|
{1003003, [{type, mission}, {file, "data/missions/black-nest.1.s.quest.nbl"}, {start, [0, 6301, 0]}]},
|
||||||
|
{1003004, [{type, mission}, {file, "data/missions/black-nest.1.s2.quest.nbl"}, {start, [0, 6301, 0]}]},
|
||||||
|
|
||||||
|
{1003010, [{type, mission}, {file, "data/missions/black-nest.2.c.quest.nbl"}, {start, [0, 6303, 0]}]},
|
||||||
|
%~ {1003011, [{type, mission}, {file, "data/missions/black-nest.2.b.quest.nbl"}, {start, [0, 6303, 0]}]},
|
||||||
|
%~ {1003012, [{type, mission}, {file, "data/missions/black-nest.2.a.quest.nbl"}, {start, [0, 6303, 0]}]},
|
||||||
|
%~ {1003013, [{type, mission}, {file, "data/missions/black-nest.2.s.quest.nbl"}, {start, [0, 6303, 0]}]},
|
||||||
|
{1003014, [{type, mission}, {file, "data/missions/black-nest.2.s2.quest.nbl"}, {start, [0, 6303, 0]}]},
|
||||||
|
|
||||||
|
{1003020, [{type, mission}, {file, "data/missions/black-nest.3.c.quest.nbl"}, {start, [0, 6803, 0]}]},
|
||||||
|
{1003021, [{type, mission}, {file, "data/missions/black-nest.3.b.quest.nbl"}, {start, [0, 6803, 0]}]},
|
||||||
|
%~ {1003022, [{type, mission}, {file, "data/missions/black-nest.3.a.quest.nbl"}, {start, [0, 6803, 0]}]},
|
||||||
|
{1003023, [{type, mission}, {file, "data/missions/black-nest.3.s.quest.nbl"}, {start, [0, 6803, 0]}]},
|
||||||
|
%~ {1003024, [{type, mission}, {file, "data/missions/black-nest.3.s2.quest.nbl"}, {start, [0, 6803, 0]}]},
|
||||||
|
|
||||||
% Phantom Ruins (Linear Line counter)
|
% Phantom Ruins (Linear Line counter)
|
||||||
|
|
||||||
%~ {1060300, [{type, mission}, {file, "data/missions/phantom-ruins.c.quest.nbl"}, {start, [0, 8002, 0]}]},
|
%~ {1060300, [{type, mission}, {file, "data/missions/phantom-ruins.c.quest.nbl"}, {start, [0, 8002, 0]}]},
|
||||||
@ -306,6 +326,26 @@
|
|||||||
{[1001224, 0], [{file, "data/missions/true-darkness.3.s2.zone-0.nbl"}]},
|
{[1001224, 0], [{file, "data/missions/true-darkness.3.s2.zone-0.nbl"}]},
|
||||||
{[1001224, 1], [{file, "data/missions/true-darkness.3.s2.zone-1.nbl"}]},
|
{[1001224, 1], [{file, "data/missions/true-darkness.3.s2.zone-1.nbl"}]},
|
||||||
|
|
||||||
|
% The Black Nest
|
||||||
|
|
||||||
|
{[1003000, 0], [{file, "data/missions/black-nest.1.c.zone.nbl"}]},
|
||||||
|
{[1003001, 0], [{file, "data/missions/black-nest.1.b.zone.nbl"}]},
|
||||||
|
{[1003002, 0], [{file, "data/missions/black-nest.1.a.zone.nbl"}]},
|
||||||
|
{[1003003, 0], [{file, "data/missions/black-nest.1.s.zone.nbl"}]},
|
||||||
|
{[1003004, 0], [{file, "data/missions/black-nest.1.s2.zone.nbl"}]},
|
||||||
|
|
||||||
|
{[1003010, 0], [{file, "data/missions/black-nest.2.c.zone.nbl"}]},
|
||||||
|
%~ {[1003011, 0], [{file, "data/missions/black-nest.2.b.zone.nbl"}]},
|
||||||
|
%~ {[1003012, 0], [{file, "data/missions/black-nest.2.a.zone.nbl"}]},
|
||||||
|
%~ {[1003013, 0], [{file, "data/missions/black-nest.2.s.zone.nbl"}]},
|
||||||
|
{[1003014, 0], [{file, "data/missions/black-nest.2.s2.zone.nbl"}]},
|
||||||
|
|
||||||
|
{[1003020, 0], [{file, "data/missions/black-nest.3.c.zone.nbl"}]},
|
||||||
|
{[1003021, 0], [{file, "data/missions/black-nest.3.b.zone.nbl"}]},
|
||||||
|
%~ {[1003022, 0], [{file, "data/missions/black-nest.3.a.zone.nbl"}]},
|
||||||
|
{[1003023, 0], [{file, "data/missions/black-nest.3.s.zone.nbl"}]},
|
||||||
|
%~ {[1003024, 0], [{file, "data/missions/black-nest.3.s2.zone.nbl"}]},
|
||||||
|
|
||||||
% Phantom Ruins (Linear Line counter)
|
% Phantom Ruins (Linear Line counter)
|
||||||
|
|
||||||
%~ {[1060300, 0], [{file, "data/missions/phantom-ruins.c-0.zone.nbl"}]},
|
%~ {[1060300, 0], [{file, "data/missions/phantom-ruins.c-0.zone.nbl"}]},
|
||||||
@ -667,8 +707,8 @@
|
|||||||
{ 25, [{quests, "data/counters/colony.dallgun.pack"}, {bg, 255}, {options, << 16#01003c00:32, 0, 3, 3, 0,
|
{ 25, [{quests, "data/counters/colony.dallgun.pack"}, {bg, 255}, {options, << 16#01003c00:32, 0, 3, 3, 0,
|
||||||
0, 0, 0, 0, 0, % Phantom Ruins C-S
|
0, 0, 0, 0, 0, % Phantom Ruins C-S
|
||||||
3, 3, 3, 3, 3, 0, % The Black Nest C-S2 variant 1
|
3, 3, 3, 3, 3, 0, % The Black Nest C-S2 variant 1
|
||||||
3, 3, 3, 3, 3, 0, % The Black Nest C-S2 variant 2
|
3, 0, 0, 0, 3, 0, % The Black Nest C-S2 variant 2
|
||||||
3, 3, 3, 3, 3, 0, % The Black Nest C-S2 variant 3
|
3, 3, 0, 3, 0, 0, % The Black Nest C-S2 variant 3
|
||||||
0, 0, 0, 0, 0, % True Darkness C-S2 variant 1
|
0, 0, 0, 0, 0, % True Darkness C-S2 variant 1
|
||||||
3, 0, 3, 3, 0, % True Darkness C-S2 variant 2
|
3, 0, 3, 3, 0, % True Darkness C-S2 variant 2
|
||||||
3, 3, 3, 0, 3, % True Darkness C-S2 variant 3
|
3, 3, 3, 0, 3, % True Darkness C-S2 variant 3
|
||||||
|
@ -870,13 +870,13 @@ handle(16#0f0a, Data) ->
|
|||||||
[[EventID|_], BlockID] = psu_missions:key_event(User#users.instanceid, ObjectID),
|
[[EventID|_], BlockID] = psu_missions:key_event(User#users.instanceid, ObjectID),
|
||||||
send_1205(EventID, BlockID, 0),
|
send_1205(EventID, BlockID, 0),
|
||||||
send_1213(ObjectID, 1);
|
send_1213(ObjectID, 1);
|
||||||
13 -> % floor_button on
|
13 -> % floor_button on (also sent when clearing a few of the rooms in black nest)
|
||||||
% 1205 1213
|
% 1205 1213
|
||||||
ignore;
|
ignore;
|
||||||
14 -> % floor_button off
|
14 -> % floor_button off
|
||||||
% 1205(same, with 1 as last value) 1213(same, with 0 as last value)
|
% 1205(same, with 1 as last value) 1213(same, with 0 as last value)
|
||||||
ignore;
|
ignore;
|
||||||
%~ 19 -> % @todo (somewhere in phantom ruins block 4)
|
%~ 19 -> % activate trap
|
||||||
%~ ignore;
|
%~ ignore;
|
||||||
20 -> % enter counter/elevator/room/spaceport/pick key/use key
|
20 -> % enter counter/elevator/room/spaceport/pick key/use key
|
||||||
ignore;
|
ignore;
|
||||||
|
@ -56,6 +56,9 @@ object_init(InstanceID, BlockID, [floor_button|Tail], ListNb, ObjectNb, ObjectID
|
|||||||
%% @todo Apparently shoot_button has a TargetID. I'm sure why though.
|
%% @todo Apparently shoot_button has a TargetID. I'm sure why though.
|
||||||
object_init(InstanceID, BlockID, [shoot_button|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
object_init(InstanceID, BlockID, [shoot_button|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
||||||
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 1);
|
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 1);
|
||||||
|
%% @todo All kinds of traps have a TargetID, even if they're not targettable.
|
||||||
|
object_init(InstanceID, BlockID, [trap|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
||||||
|
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 1);
|
||||||
%% @todo Not sure why but it works that way in True Darkness.
|
%% @todo Not sure why but it works that way in True Darkness.
|
||||||
object_init(InstanceID, BlockID, [boss_gate|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
object_init(InstanceID, BlockID, [boss_gate|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
||||||
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 1);
|
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 1);
|
||||||
@ -75,7 +78,7 @@ object_init(InstanceID, BlockID, [{'spawn', NbTargets, TrigEventID, _ReqEventID}
|
|||||||
object_init(InstanceID, BlockID, [{warp, DestX, DestY, DestZ, DestDir}|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
object_init(InstanceID, BlockID, [{warp, DestX, DestY, DestZ, DestDir}|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
||||||
egs_db:objects_insert(#objects{id=[InstanceID, {warp, BlockID, ListNb, ObjectNb}], instanceid=InstanceID, type=warp, blockid=BlockID, args={DestX, DestY, DestZ, DestDir}}),
|
egs_db:objects_insert(#objects{id=[InstanceID, {warp, BlockID, ListNb, ObjectNb}], instanceid=InstanceID, type=warp, blockid=BlockID, args={DestX, DestY, DestZ, DestDir}}),
|
||||||
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID, TargetID);
|
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID, TargetID);
|
||||||
%% @todo Not sure where these 2 come from yet, assuming crystal but might not be that.
|
%% @todo Apparently crystal has 2 TargetIDs. Presumably because it has both on/off states.
|
||||||
object_init(InstanceID, BlockID, [crystal|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
object_init(InstanceID, BlockID, [crystal|Tail], ListNb, ObjectNb, ObjectID, TargetID) ->
|
||||||
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 2);
|
object_init(InstanceID, BlockID, Tail, ListNb, ObjectNb + 1, ObjectID + 1, TargetID + 2);
|
||||||
%% A few object types don't have an ObjectID nor a TargetID. Disregard them completely.
|
%% A few object types don't have an ObjectID nor a TargetID. Disregard them completely.
|
||||||
|
@ -212,6 +212,8 @@ parse_object_args(35, _Params, _Data) ->
|
|||||||
parse_object_args(43, _Params, _Data) ->
|
parse_object_args(43, _Params, _Data) ->
|
||||||
shoot_button;
|
shoot_button;
|
||||||
|
|
||||||
|
%% @todo Seems to be a zonde turret "trap".
|
||||||
|
|
||||||
parse_object_args(44, _Params, _Data) ->
|
parse_object_args(44, _Params, _Data) ->
|
||||||
trap;
|
trap;
|
||||||
|
|
||||||
@ -231,7 +233,17 @@ parse_object_args(62, _Params, _Data) ->
|
|||||||
pp_cube;
|
pp_cube;
|
||||||
|
|
||||||
parse_object_args(64, _Params, _Data) ->
|
parse_object_args(64, _Params, _Data) ->
|
||||||
hidden_minimap_section.
|
hidden_minimap_section;
|
||||||
|
|
||||||
|
%% @todo Seems to be a megid turret "trap".
|
||||||
|
|
||||||
|
parse_object_args(70, _Params, _Data) ->
|
||||||
|
trap;
|
||||||
|
|
||||||
|
%% @todo Seems to be a ceiling fall-on-you-and-explode "trap". Possibly also poison room.
|
||||||
|
|
||||||
|
parse_object_args(71, _Params, _Data) ->
|
||||||
|
trap.
|
||||||
|
|
||||||
convert_eventid(16#ffff) ->
|
convert_eventid(16#ffff) ->
|
||||||
false;
|
false;
|
||||||
|
Loading…
Reference in New Issue
Block a user