复仇者联盟:无限战争
复仇者联盟:无限战争是漫威电影宇宙(MCU)的最新作品。它是之前18部电影的集大成之作,这些电影介绍了复仇者、更多复仇者以及漫威宇宙中的其他角色,例如银河护卫队、奇异博士、蜘蛛侠和黑豹。观看这部电影的一种准备方式是看遍之前的18部电影。虽然这将是一场超级极端的周末狂看,但我们许多人没有时间这样做。不用担心!这个GraphGist将帮助你理解你需要知道的关键点。
电影将围绕灭霸、复仇者以及之前电影中引入的无限宝石展开。简而言之,灭霸想要无限宝石,而复仇者想要阻止他。但是复仇者是谁?他们会独自对抗灭霸吗?他们会自相残杀吗?这个Gist希望回答这些问题。不幸的是,我们没有时间深入探讨振金、美国队长的胡子或雷神被摧毁的锤子,但别担心,我们还有很多要谈!
MERGE (n:Character {name: 'Gamora'});
MERGE (n:Character {name: 'Thanos'});
MERGE (n:Character {name: 'Nebula'});
MERGE (n:Character {name: 'Thanos'});
MERGE (n:Character {name: 'Gamora'});
MERGE (n:Character {name: 'Nebula'});
MERGE (n:Character {name: 'Star-Lord'});
MERGE (n:Group {name: 'Guardians of the Galaxy'});
MERGE (n:Character {name: 'Gamora'});
MERGE (n:Group {name: 'Guardians of the Galaxy'});
MERGE (n:Character {name: 'Groot'});
MERGE (n:Group {name: 'Guardians of the Galaxy'});
MERGE (n:Character {name: 'Drax'});
MERGE (n:Group {name: 'Guardians of the Galaxy'});
MERGE (n:Character {name: 'Rocket'});
MERGE (n:Group {name: 'Guardians of the Galaxy'});
MERGE (n:InfinityStone {name: 'Orb'});
MERGE (n:PlotPoint {name: 'Orb_1'})
ON CREATE SET n.description = 'Star-Lord acquires the Orb'
ON MATCH SET n.description = 'Star-Lord acquires the Orb';
MERGE (n:PlotPoint {name: 'Orb_2'})
ON CREATE SET n.description = 'Orb Power Stone destroys the Collector\'s lab'
ON MATCH SET n.description = 'Orb Power Stone destroys the Collector\'s lab';
MERGE (n:PlotPoint {name: 'Orb_3'})
ON CREATE SET n.description = 'Ronan acquires the Orb'
ON MATCH SET n.description = 'Ronan acquires the Orb';
MERGE (n:PlotPoint {name: 'Orb_4'})
ON CREATE SET n.description = 'Ronan threatens Xandar with the Power Stone'
ON MATCH SET n.description = 'Ronan threatens Xandar with the Power Stone';
MERGE (n:PlotPoint {name: 'Orb_5'})
ON CREATE SET n.description = 'Star-Lord grabs the Infinity Stone and nearly dies'
ON MATCH SET n.description = 'Star-Lord grabs the Infinity Stone and nearly dies';
MERGE (n:PlotPoint {name: 'Orb_6'})
ON CREATE SET n.description = 'Star-Lord leaves the Orb with the Nova Corps for safe-keeping',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Star-Lord leaves the Orb with the Nova Corps for safe-keeping',n.wrapUpEndCredits = 'Yes';
MERGE (start:Character {name: 'Gamora'})
MERGE (end:Character {name: 'Thanos'})
MERGE (start)-[:HAS_FATHER]->(end);
MERGE (start:Character {name: 'Nebula'})
MERGE (end:Character {name: 'Thanos'})
MERGE (start)-[:HAS_FATHER]->(end);
MERGE (start:Character {name: 'Gamora'})
MERGE (end:Character {name: 'Nebula'})
MERGE (start)-[:HAS_SISTER]->(end);
MERGE (start:Character {name: 'Star-Lord'})
MERGE (end:Group {name: 'Guardians of the Galaxy'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Gamora'})
MERGE (end:Group {name: 'Guardians of the Galaxy'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Groot'})
MERGE (end:Group {name: 'Guardians of the Galaxy'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Drax'})
MERGE (end:Group {name: 'Guardians of the Galaxy'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Rocket'})
MERGE (end:Group {name: 'Guardians of the Galaxy'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:PlotPoint {name: 'Orb_1'})
MERGE (end:Location {name: 'Morag'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Orb_1'})
MERGE (end:Character {name: 'Star-Lord'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Orb_1'})
MERGE (end:InfinityStone {name: 'Orb'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Orb_1'})
MERGE (end:Movie {name: 'Guardians of the Galaxy'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Orb_2'})
MERGE (end:Location {name: 'Knowhere'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Orb_2'})
MERGE (end:Character {name: 'Star-Lord'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Orb_1'})
MERGE (end:PlotPoint {name: 'Orb_2'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Orb_2'})
MERGE (end:InfinityStone {name: 'Orb'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Orb_2'})
MERGE (end:Movie {name: 'Guardians of the Galaxy'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Orb_3'})
MERGE (end:Location {name: 'Knowhere'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Orb_3'})
MERGE (end:Character {name: 'Ronan'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Orb_2'})
MERGE (end:PlotPoint {name: 'Orb_3'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Orb_3'})
MERGE (end:InfinityStone {name: 'Orb'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Orb_3'})
MERGE (end:Movie {name: 'Guardians of the Galaxy'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Orb_4'})
MERGE (end:Location {name: 'Xandar'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Orb_4'})
MERGE (end:Character {name: 'Ronan'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Orb_3'})
MERGE (end:PlotPoint {name: 'Orb_4'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Orb_4'})
MERGE (end:InfinityStone {name: 'Orb'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Orb_4'})
MERGE (end:Movie {name: 'Guardians of the Galaxy'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Orb_5'})
MERGE (end:Location {name: 'Xandar'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Orb_5'})
MERGE (end:Group {name: 'Guardians of the Galaxy'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Orb_4'})
MERGE (end:PlotPoint {name: 'Orb_5'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Orb_5'})
MERGE (end:InfinityStone {name: 'Orb'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Orb_5'})
MERGE (end:Movie {name: 'Guardians of the Galaxy'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Orb_6'})
MERGE (end:Location {name: 'Xandar'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Orb_6'})
MERGE (end:Group {name: 'Nova Corps'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Orb_5'})
MERGE (end:PlotPoint {name: 'Orb_6'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Orb_6'})
MERGE (end:InfinityStone {name: 'Orb'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Orb_6'})
MERGE (end:Movie {name: 'Guardians of the Galaxy'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (n:Character {name: 'Hawkeye'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Hulk'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Natasha Romanoff'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Captain America'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Wanda Maximoff'});
MERGE (n:Character {name: 'Scarlet Witch'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Character {name: 'Ultron'});
MERGE (n:InfinityStone {name: 'Mind Stone'});
MERGE (n:PlotPoint {name: 'Mind Stone_1'})
ON CREATE SET n.description = 'Loki uses staff to mind control Erik Selvig and Hawkeye'
ON MATCH SET n.description = 'Loki uses staff to mind control Erik Selvig and Hawkeye';
MERGE (n:PlotPoint {name: 'Mind Stone_2'})
ON CREATE SET n.description = 'Avengers capture Loki'
ON MATCH SET n.description = 'Avengers capture Loki';
MERGE (n:PlotPoint {name: 'Mind Stone_3'})
ON CREATE SET n.description = 'Hawkeye attacks and frees Loki who gets staff back'
ON MATCH SET n.description = 'Hawkeye attacks and frees Loki who gets staff back';
MERGE (n:PlotPoint {name: 'Mind Stone_4'})
ON CREATE SET n.description = 'Natasha uses Loki\'s staff to close portal'
ON MATCH SET n.description = 'Natasha uses Loki\'s staff to close portal';
MERGE (n:PlotPoint {name: 'Mind Stone_5'})
ON CREATE SET n.description = 'Hydra uses staff to create Scarlet Witch and Quicksilver',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Hydra uses staff to create Scarlet Witch and Quicksilver',n.wrapUpEndCredits = 'Yes';
MERGE (n:PlotPoint {name: 'Mind Stone_6'})
ON CREATE SET n.description = 'The Avengers get the staff back from Hydra'
ON MATCH SET n.description = 'The Avengers get the staff back from Hydra';
MERGE (n:PlotPoint {name: 'Mind Stone_7'})
ON CREATE SET n.description = 'Tony and Bruce use staff to create an AI called Ultron'
ON MATCH SET n.description = 'Tony and Bruce use staff to create an AI called Ultron';
MERGE (n:PlotPoint {name: 'Mind Stone_8'})
ON CREATE SET n.description = 'Ultron minds control Helen Cho to create a body for him'
ON MATCH SET n.description = 'Ultron minds control Helen Cho to create a body for him';
MERGE (n:PlotPoint {name: 'Mind Stone_9'})
ON CREATE SET n.description = 'J.A.R.V.I.S. plus the staff Mind stone create Vision'
ON MATCH SET n.description = 'J.A.R.V.I.S. plus the staff Mind stone create Vision';
MERGE (n:PlotPoint {name: 'Mind Stone_10'})
ON CREATE SET n.description = 'Thanos says \"Fine, I\'ll do it myself\"',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Thanos says \"Fine, I\'ll do it myself\"',n.wrapUpEndCredits = 'Yes';
MERGE (start:Character {name: 'Hawkeye'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Hulk'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Natasha Romanoff'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Captain America'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Wanda Maximoff'})
MERGE (end:Character {name: 'Scarlet Witch'})
MERGE (start)-[:IS]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Character {name: 'Ultron'})
MERGE (start)-[:CREATED]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_1'})
MERGE (end:Location {name: 'S.H.I.E.L.D Lab'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_1'})
MERGE (end:Character {name: 'Loki'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_1'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_1'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_2'})
MERGE (end:Location {name: 'Austria'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_2'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_1'})
MERGE (end:PlotPoint {name: 'Mind Stone_2'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_2'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_2'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_3'})
MERGE (end:Location {name: 'S.H.I.E.L.D. Helicarrier'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_3'})
MERGE (end:Character {name: 'Loki'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_2'})
MERGE (end:PlotPoint {name: 'Mind Stone_3'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_3'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_3'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_4'})
MERGE (end:Location {name: 'Stark Tower in New York City'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_4'})
MERGE (end:Character {name: 'Natasha Romanoff'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_3'})
MERGE (end:PlotPoint {name: 'Mind Stone_4'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_4'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_4'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_5'})
MERGE (end:Location {name: 'Sokovia'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_5'})
MERGE (end:Group {name: 'Hydra'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_4'})
MERGE (end:PlotPoint {name: 'Mind Stone_5'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_5'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_5'})
MERGE (end:Movie {name: 'Captain America: The Winter Soldier'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_6'})
MERGE (end:Location {name: 'Sokovia'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_6'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_5'})
MERGE (end:PlotPoint {name: 'Mind Stone_6'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_6'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_6'})
MERGE (end:Movie {name: 'Avengers: Age of Ultron'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_7'})
MERGE (end:Location {name: 'Top of Stark Tower in New York City'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_7'})
MERGE (end:Character {name: 'Tony Stark'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_6'})
MERGE (end:PlotPoint {name: 'Mind Stone_7'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_7'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_7'})
MERGE (end:Movie {name: 'Avengers: Age of Ultron'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_8'})
MERGE (end:Location {name: 'Sokovia'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_8'})
MERGE (end:Character {name: 'Ultron'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_7'})
MERGE (end:PlotPoint {name: 'Mind Stone_8'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_8'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_8'})
MERGE (end:Movie {name: 'Avengers: Age of Ultron'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_9'})
MERGE (end:Location {name: 'Seoul, Korea'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_9'})
MERGE (end:Character {name: 'Vision'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_8'})
MERGE (end:PlotPoint {name: 'Mind Stone_9'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_9'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_9'})
MERGE (end:Movie {name: 'Avengers: Age of Ultron'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_10'})
MERGE (end:Character {name: 'Thanos'})
MERGE (start)-[:HAS_CHARACTER]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_9'})
MERGE (end:PlotPoint {name: 'Mind Stone_10'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_10'})
MERGE (end:InfinityStone {name: 'Mind Stone'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Mind Stone_10'})
MERGE (end:Movie {name: 'Avengers: Age of Ultron'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (n:Character {name: 'Red Skull'});
MERGE (n:Group {name: 'Hydra'});
MERGE (n:Character {name: 'Tony Stark'});
MERGE (n:Character {name: 'Howard Stark'});
MERGE (n:Character {name: 'Hawkeye'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Hulk'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Natasha Romanoff'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Captain America'});
MERGE (n:Group {name: 'Avengers'});
MERGE (n:Character {name: 'Tony Stark'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Character {name: 'Bruce Banner'});
MERGE (n:Character {name: 'The Hulk'});
MERGE (n:InfinityStone {name: 'Tesseract'});
MERGE (n:PlotPoint {name: 'Tesseract_1'})
ON CREATE SET n.description = 'Red Skull acquires Tesseract from a location in Norway'
ON MATCH SET n.description = 'Red Skull acquires Tesseract from a location in Norway';
MERGE (n:PlotPoint {name: 'Tesseract_2'})
ON CREATE SET n.description = 'Hydra develops energy weapons using the Tesseract'
ON MATCH SET n.description = 'Hydra develops energy weapons using the Tesseract';
MERGE (n:PlotPoint {name: 'Tesseract_3'})
ON CREATE SET n.description = 'Captain America and Red Skull battle on a plane with the Tesseract aboard'
ON MATCH SET n.description = 'Captain America and Red Skull battle on a plane with the Tesseract aboard';
MERGE (n:PlotPoint {name: 'Tesseract_4'})
ON CREATE SET n.description = 'Tesseract burns through plane floor after destroying Red Skull'
ON MATCH SET n.description = 'Tesseract burns through plane floor after destroying Red Skull';
MERGE (n:PlotPoint {name: 'Tesseract_5'})
ON CREATE SET n.description = 'Howard Stark uses robotic arm to grab Tesseract from Ocean',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Howard Stark uses robotic arm to grab Tesseract from Ocean',n.wrapUpEndCredits = 'Yes';
MERGE (n:PlotPoint {name: 'Tesseract_6'})
ON CREATE SET n.description = 'Nick Fury authorized Tesseract to be used for weapons research'
ON MATCH SET n.description = 'Nick Fury authorized Tesseract to be used for weapons research';
MERGE (n:PlotPoint {name: 'Tesseract_7'})
ON CREATE SET n.description = 'Loki teleports to the S.H.I.E.L.D lab and takes the Tesseract'
ON MATCH SET n.description = 'Loki teleports to the S.H.I.E.L.D lab and takes the Tesseract';
MERGE (n:PlotPoint {name: 'Tesseract_8'})
ON CREATE SET n.description = 'Loki gives Erik Selvig the Tesseract for portal research'
ON MATCH SET n.description = 'Loki gives Erik Selvig the Tesseract for portal research';
MERGE (n:PlotPoint {name: 'Tesseract_9'})
ON CREATE SET n.description = 'Chitauri invade through space portal, the Avengers defeat the Chitauri'
ON MATCH SET n.description = 'Chitauri invade through space portal, the Avengers defeat the Chitauri';
MERGE (n:PlotPoint {name: 'Tesseract_10'})
ON CREATE SET n.description = 'Thor is given the Tesseract to take back to Asgard',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Thor is given the Tesseract to take back to Asgard',n.wrapUpEndCredits = 'Yes';
MERGE (n:PlotPoint {name: 'Tesseract_11'})
ON CREATE SET n.description = 'Tesseract shown when Hela walks through artifact room'
ON MATCH SET n.description = 'Tesseract shown when Hela walks through artifact room';
MERGE (n:PlotPoint {name: 'Tesseract_12'})
ON CREATE SET n.description = 'Loki suspected of grabbing Tesseract',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Loki suspected of grabbing Tesseract',n.wrapUpEndCredits = 'Yes';
MERGE (start:Character {name: 'Red Skull'})
MERGE (end:Group {name: 'Hydra'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Tony Stark'})
MERGE (end:Character {name: 'Howard Stark'})
MERGE (start)-[:HAS_FATHER]->(end);
MERGE (start:Character {name: 'Hawkeye'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Hulk'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Natasha Romanoff'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Captain America'})
MERGE (end:Group {name: 'Avengers'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Tony Stark'})
MERGE (end:Character {name: 'Iron Man'})
MERGE (start)-[:IS]->(end);
MERGE (start:Character {name: 'Bruce Banner'})
MERGE (end:Character {name: 'The Hulk'})
MERGE (start)-[:IS]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_1'})
MERGE (end:Location {name: 'Norway'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_1'})
MERGE (end:Character {name: 'Red Skull'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_1'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_1'})
MERGE (end:Movie {name: 'Captain America: The First Avenger'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_2'})
MERGE (end:Location {name: 'Hydra Lab'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_2'})
MERGE (end:Group {name: 'Hydra'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_1'})
MERGE (end:PlotPoint {name: 'Tesseract_2'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_2'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_2'})
MERGE (end:Movie {name: 'Captain America: The First Avenger'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_3'})
MERGE (end:Location {name: 'Plane'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_3'})
MERGE (end:Character {name: 'Red Skull'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_2'})
MERGE (end:PlotPoint {name: 'Tesseract_3'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_3'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_3'})
MERGE (end:Movie {name: 'Captain America: The First Avenger'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_4'})
MERGE (end:Location {name: 'Ocean'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_3'})
MERGE (end:PlotPoint {name: 'Tesseract_4'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_4'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_4'})
MERGE (end:Movie {name: 'Captain America: The First Avenger'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_5'})
MERGE (end:Location {name: 'Ocean'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_5'})
MERGE (end:Character {name: 'Howard Stark'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_4'})
MERGE (end:PlotPoint {name: 'Tesseract_5'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_5'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_5'})
MERGE (end:Movie {name: 'Captain America: The First Avenger'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_6'})
MERGE (end:Location {name: 'S.H.I.E.L.D Lab'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_6'})
MERGE (end:Group {name: 'S.H.I.E.L.D'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_5'})
MERGE (end:PlotPoint {name: 'Tesseract_6'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_6'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_6'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_7'})
MERGE (end:Location {name: 'S.H.I.E.L.D Lab'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_7'})
MERGE (end:Character {name: 'Loki'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_6'})
MERGE (end:PlotPoint {name: 'Tesseract_7'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_7'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_7'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_8'})
MERGE (end:Location {name: 'Unknown lab'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_8'})
MERGE (end:Character {name: 'Erik Selvig'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_7'})
MERGE (end:PlotPoint {name: 'Tesseract_8'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_8'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_8'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_9'})
MERGE (end:Location {name: 'Stark Tower in New York City'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_9'})
MERGE (end:Character {name: 'Erik Selvig'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_8'})
MERGE (end:PlotPoint {name: 'Tesseract_9'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_9'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_9'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_10'})
MERGE (end:Location {name: 'New York City'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_10'})
MERGE (end:Character {name: 'Thor'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_9'})
MERGE (end:PlotPoint {name: 'Tesseract_10'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_10'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_10'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_11'})
MERGE (end:Location {name: 'Asgard artifact room'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_11'})
MERGE (end:Group {name: 'Asgardians'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_10'})
MERGE (end:PlotPoint {name: 'Tesseract_11'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_11'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_11'})
MERGE (end:Movie {name: 'Thor: Ragnarok'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_12'})
MERGE (end:Location {name: 'Asgardian escape ship'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_12'})
MERGE (end:Character {name: 'Loki'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_11'})
MERGE (end:PlotPoint {name: 'Tesseract_12'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_12'})
MERGE (end:InfinityStone {name: 'Tesseract'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Tesseract_12'})
MERGE (end:Movie {name: 'Thor: Ragnarok'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (n:Group {name: 'Guardians of the Galaxy'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Captain America'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Natasha Romanoff'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Hawkeye'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'The Hulk'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Wanda Maximoff'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Spider-Man'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Doctor Strange'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Wong'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Black Panther'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'White Wolf'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'War Machine'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Ant-Man'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Falcon'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Heimdall'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Vision'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Captain America'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Character {name: 'Falcon'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Character {name: 'Ant-Man'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Character {name: 'Hawkeye'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Character {name: 'Wanda Maximoff'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Character {name: 'Winter Soldier'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Character {name: 'War Machine'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Character {name: 'Spider-Man'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Character {name: 'Natasha Romanoff'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Character {name: 'Vision'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Character {name: 'Black Panther'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Character {name: 'Captain America'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Character {name: 'Natasha Romanoff'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Character {name: 'Hawkeye'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Character {name: 'The Hulk'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Movie {name: 'The Avengers'});
MERGE (n:Event {name: 'Avengers Assemble'});
MERGE (n:Character {name: 'Loki'});
MERGE (n:Character {name: 'Iron Man'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Captain America'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Natasha Romanoff'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Hawkeye'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'The Hulk'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Wanda Maximoff'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'War Machine'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Vision'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Falcon'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Character {name: 'Ultron'});
MERGE (n:Event {name: 'Add Avengers'});
MERGE (n:Movie {name: 'Avengers: Age of Ultron'});
MERGE (n:Group {name: 'CapSide'});
MERGE (n:Event {name: 'Avengers Dissasemble'});
MERGE (n:Group {name: 'IronSide'});
MERGE (n:Event {name: 'Avengers Dissasemble'});
MERGE (n:Event {name: 'Avengers Dissasemble'});
MERGE (n:Movie {name: 'Captain America: Civil War'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Movie {name: 'Avengers: Infinity War'});
MERGE (n:Group {name: 'AvengersPlus'});
MERGE (n:Character {name: 'Thanos'});
MERGE (n:InfinityStone {name: 'Soul Stone'});
MERGE (start:Group {name: 'Guardians of the Galaxy'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Captain America'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Natasha Romanoff'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Hawkeye'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'The Hulk'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Wanda Maximoff'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Spider-Man'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Doctor Strange'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Wong'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Black Panther'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'White Wolf'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'War Machine'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Ant-Man'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Falcon'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Heimdall'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Vision'})
MERGE (end:Group {name: 'AvengersPlus'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Captain America'})
MERGE (end:Group {name: 'CapSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Falcon'})
MERGE (end:Group {name: 'CapSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Ant-Man'})
MERGE (end:Group {name: 'CapSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Hawkeye'})
MERGE (end:Group {name: 'CapSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Wanda Maximoff'})
MERGE (end:Group {name: 'CapSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Winter Soldier'})
MERGE (end:Group {name: 'CapSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Group {name: 'IronSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'War Machine'})
MERGE (end:Group {name: 'IronSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Spider-Man'})
MERGE (end:Group {name: 'IronSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Natasha Romanoff'})
MERGE (end:Group {name: 'IronSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Vision'})
MERGE (end:Group {name: 'IronSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Black Panther'})
MERGE (end:Group {name: 'IronSide'})
MERGE (start)-[:PART_OF]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Event {name: 'Avengers Assemble'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'Captain America'})
MERGE (end:Event {name: 'Avengers Assemble'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'Natasha Romanoff'})
MERGE (end:Event {name: 'Avengers Assemble'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'Hawkeye'})
MERGE (end:Event {name: 'Avengers Assemble'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'The Hulk'})
MERGE (end:Event {name: 'Avengers Assemble'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Event {name: 'Avengers Assemble'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Event {name: 'Avengers Assemble'})
MERGE (end:Movie {name: 'The Avengers'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:Event {name: 'Avengers Assemble'})
MERGE (end:Character {name: 'Loki'})
MERGE (start)-[:TO_FIGHT]->(end);
MERGE (start:Character {name: 'Iron Man'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:IS_AVENGER]->(end);
MERGE (start:Character {name: 'Captain America'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:IS_AVENGER]->(end);
MERGE (start:Character {name: 'Natasha Romanoff'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:IS_AVENGER]->(end);
MERGE (start:Character {name: 'Hawkeye'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:IS_AVENGER]->(end);
MERGE (start:Character {name: 'The Hulk'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:IS_AVENGER]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:IS_AVENGER]->(end);
MERGE (start:Character {name: 'Wanda Maximoff'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'War Machine'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'Vision'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Character {name: 'Falcon'})
MERGE (end:Event {name: 'Add Avengers'})
MERGE (start)-[:BECOMES_AVENGER]->(end);
MERGE (start:Event {name: 'Add Avengers'})
MERGE (end:Character {name: 'Ultron'})
MERGE (start)-[:TO_FIGHT]->(end);
MERGE (start:Event {name: 'Add Avengers'})
MERGE (end:Movie {name: 'Avengers: Age of Ultron'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:Group {name: 'CapSide'})
MERGE (end:Event {name: 'Avengers Dissasemble'})
MERGE (start)-[:AVENGERS_SPLIT]->(end);
MERGE (start:Group {name: 'IronSide'})
MERGE (end:Event {name: 'Avengers Dissasemble'})
MERGE (start)-[:AVENGERS_SPLIT]->(end);
MERGE (start:Event {name: 'Avengers Dissasemble'})
MERGE (end:Movie {name: 'Captain America: Civil War'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:Group {name: 'AvengersPlus'})
MERGE (end:Movie {name: 'Avengers: Infinity War'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:Group {name: 'AvengersPlus'})
MERGE (end:Character {name: 'Thanos'})
MERGE (start)-[:TO_FIGHT]->(end);
MERGE (n:Character {name: 'Thor'});
MERGE (n:Character {name: 'Jane Foster'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Character {name: 'Odin'});
MERGE (n:Character {name: 'Thor'});
MERGE (n:Character {name: 'Loki'});
MERGE (n:InfinityStone {name: 'Aether'});
MERGE (n:PlotPoint {name: 'Aether_1'})
ON CREATE SET n.description = 'Asgardians battle Dark Elves, Bor defeats Malekith and takes the Aether'
ON MATCH SET n.description = 'Asgardians battle Dark Elves, Bor defeats Malekith and takes the Aether';
MERGE (n:PlotPoint {name: 'Aether_2'})
ON CREATE SET n.description = 'Odin\'s father Bor stashes the Aether away in a stone column'
ON MATCH SET n.description = 'Odin\'s father Bor stashes the Aether away in a stone column';
MERGE (n:PlotPoint {name: 'Aether_3'})
ON CREATE SET n.description = 'Jane gets sucked into a portal and is infected by the Aether'
ON MATCH SET n.description = 'Jane gets sucked into a portal and is infected by the Aether';
MERGE (n:PlotPoint {name: 'Aether_4'})
ON CREATE SET n.description = 'Thor takes Jane to Asgard'
ON MATCH SET n.description = 'Thor takes Jane to Asgard';
MERGE (n:PlotPoint {name: 'Aether_5'})
ON CREATE SET n.description = 'Loki tricks Malekith into drawing the Aether out of Jane'
ON MATCH SET n.description = 'Loki tricks Malekith into drawing the Aether out of Jane';
MERGE (n:PlotPoint {name: 'Aether_6'})
ON CREATE SET n.description = 'Erik Selvig opens a portal to send Malekith back to Svartalfheim'
ON MATCH SET n.description = 'Erik Selvig opens a portal to send Malekith back to Svartalfheim';
MERGE (n:PlotPoint {name: 'Aether_7'})
ON CREATE SET n.description = 'Volstagg and Sif deliver the Aether to The Collector',n.wrapUpEndCredits = 'Yes'
ON MATCH SET n.description = 'Volstagg and Sif deliver the Aether to The Collector',n.wrapUpEndCredits = 'Yes';
MERGE (start:Character {name: 'Thor'})
MERGE (end:Character {name: 'Jane Foster'})
MERGE (start)-[:HAS_GIRLFRIEND]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Character {name: 'Odin'})
MERGE (start)-[:HAS_FATHER]->(end);
MERGE (start:Character {name: 'Thor'})
MERGE (end:Character {name: 'Loki'})
MERGE (start)-[:HAS_BROTHER]->(end);
MERGE (start:PlotPoint {name: 'Aether_1'})
MERGE (end:Location {name: 'Svartalfheim'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_1'})
MERGE (end:Character {name: 'Malekith'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Aether_1'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_1'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Aether_2'})
MERGE (end:Location {name: 'Stone column in hidden dimension'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_1'})
MERGE (end:PlotPoint {name: 'Aether_2'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Aether_2'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_2'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Aether_3'})
MERGE (end:Location {name: 'London'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_3'})
MERGE (end:Character {name: 'Jane Foster'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Aether_2'})
MERGE (end:PlotPoint {name: 'Aether_3'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Aether_3'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_3'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Aether_4'})
MERGE (end:Location {name: 'Asgard'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_4'})
MERGE (end:Character {name: 'Jane Foster'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Aether_3'})
MERGE (end:PlotPoint {name: 'Aether_4'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Aether_4'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_4'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Aether_5'})
MERGE (end:Location {name: 'Svartalfheim'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_5'})
MERGE (end:Character {name: 'Malekith'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Aether_4'})
MERGE (end:PlotPoint {name: 'Aether_5'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Aether_5'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_5'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Aether_6'})
MERGE (end:Location {name: 'Earth'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_6'})
MERGE (end:Character {name: 'Malekith'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Aether_5'})
MERGE (end:PlotPoint {name: 'Aether_6'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Aether_6'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_6'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Aether_7'})
MERGE (end:Location {name: 'Knowhere'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Aether_7'})
MERGE (end:Character {name: 'The Collector'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Aether_6'})
MERGE (end:PlotPoint {name: 'Aether_7'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Aether_7'})
MERGE (end:InfinityStone {name: 'Aether'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Aether_7'})
MERGE (end:Movie {name: 'Thor: The Dark World'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (n:InfinityStone {name: 'Eye of Agamotto'});
MERGE (n:PlotPoint {name: 'Eye of Agamotto_1'})
ON CREATE SET n.description = 'Doctor Strange uses the Eye of Agamotto to manipulate time'
ON MATCH SET n.description = 'Doctor Strange uses the Eye of Agamotto to manipulate time';
MERGE (n:PlotPoint {name: 'Eye of Agamotto_2'})
ON CREATE SET n.description = 'Dormammu is destroying the Earth, Doctor Strange reverses time to undo it'
ON MATCH SET n.description = 'Dormammu is destroying the Earth, Doctor Strange reverses time to undo it';
MERGE (n:PlotPoint {name: 'Eye of Agamotto_3'})
ON CREATE SET n.description = 'Doctor Strange travels to Dark Dimension and traps Dormammu in a time loop'
ON MATCH SET n.description = 'Doctor Strange travels to Dark Dimension and traps Dormammu in a time loop';
MERGE (n:PlotPoint {name: 'Eye of Agamotto_4'})
ON CREATE SET n.description = 'Doctor Strange puts the Eye of Agamotto back where he found it'
ON MATCH SET n.description = 'Doctor Strange puts the Eye of Agamotto back where he found it';
MERGE (start:PlotPoint {name: 'Eye of Agamotto_1'})
MERGE (end:Location {name: 'Kamar-Taj'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_1'})
MERGE (end:Character {name: 'Doctor Strange'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_1'})
MERGE (end:InfinityStone {name: 'Eye of Agamotto'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_1'})
MERGE (end:Movie {name: 'Doctor Strange'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_2'})
MERGE (end:Location {name: 'Hong Kong'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_2'})
MERGE (end:Character {name: 'Doctor Strange'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_1'})
MERGE (end:PlotPoint {name: 'Eye of Agamotto_2'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_2'})
MERGE (end:InfinityStone {name: 'Eye of Agamotto'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_2'})
MERGE (end:Movie {name: 'Doctor Strange'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_3'})
MERGE (end:Location {name: 'Dark Dimension'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_3'})
MERGE (end:Character {name: 'Doctor Strange'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_2'})
MERGE (end:PlotPoint {name: 'Eye of Agamotto_3'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_3'})
MERGE (end:InfinityStone {name: 'Eye of Agamotto'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_3'})
MERGE (end:Movie {name: 'Doctor Strange'})
MERGE (start)-[:IN_MOVIE]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_4'})
MERGE (end:Location {name: 'Kamar-Taj'})
MERGE (start)-[:HAS_LOCATION]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_4'})
MERGE (end:Character {name: 'Nobody'})
MERGE (start)-[:POSSESSED_BY]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_3'})
MERGE (end:PlotPoint {name: 'Eye of Agamotto_4'})
MERGE (start)-[:NEXT_PLOT_POINT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_4'})
MERGE (end:InfinityStone {name: 'Eye of Agamotto'})
MERGE (start)-[:ABOUT]->(end);
MERGE (start:PlotPoint {name: 'Eye of Agamotto_4'})
MERGE (end:Movie {name: 'Doctor Strange'})
MERGE (start)-[:IN_MOVIE]->(end);
MATCH (stone:InfinityStone)
OPTIONAL MATCH (pp:PlotPoint)-[:ABOUT]->(stone:InfinityStone),
(pp:PlotPoint)-[:IN_MOVIE]->(m:Movie)
WITH stone, m.name as movieName
ORDER BY movieName
RETURN stone.name as infinityStone, collect(distinct movieName) as movies
ORDER BY infinityStone
复仇者联盟 - 早期岁月
复仇者是由神盾局的尼克·弗瑞组建的一群超能力角色。钢铁侠、美国队长、雷神和绿巨人都在电影复仇者联盟之前有自己的电影,他们在该电影中加入了娜塔莎·罗曼诺夫和鹰眼来组成团队。他们与雷神的兄弟洛基作战,洛基打开了一个太空传送门,让一个名叫奇塔瑞的外星种族入侵。这一系列电影被称为MCU的第一阶段。
MATCH (c:Character)-[:PART_OF]->(g:Group {name:'Avengers'})
RETURN c.name as avenger
ORDER BY avenger
在第一阶段,我们认识了宇宙魔方,一个首次出现在电影美国队长:第一复仇者中的蓝色立方体。宇宙魔方为九头蛇使用的能量武器提供动力。后来,在电影复仇者联盟中,揭示了宇宙魔方的真正目的是打开通往太空的传送门。宇宙魔方内含一颗无限宝石,是灭霸追寻的六颗宝石之一。在电影复仇者联盟中,灭霸通过奇塔瑞和洛基行动,因此他尚未直接参与。复仇者从奇塔瑞入侵中拯救了世界,但这让钢铁侠(托尼·斯塔克)产生了一些心理问题,这些问题影响了他未来电影中的决定。雷神将宇宙魔方带到阿斯加德,他们吃了沙威玛,一切安好。

复仇者联盟 - 第二阶段
MCU的第二批电影被称为第二阶段,并以电影复仇者联盟:奥创纪元达到高潮。在第二阶段,我们看到了钢铁侠、美国队长和雷神的新篇章,并加入了一个新的非复仇者漫威团队,银河护卫队。我们在第二阶段开始加入更多角色和更多无限宝石。在电影雷神:黑暗世界中,雷神的女朋友简·福斯特感染了以太,这是一种无定形能量,由合适的人使用时会非常强大。它最终到了收藏家手中,由雷神的阿斯加德同伴交给他,他们不想让阿斯加德拥有两颗无限宝石(他们已经有了宇宙魔方)。
银河护卫队
电影银河护卫队引入了球体,也称为力量宝石,当时星爵在莫拉格星球上得到了它。罗南是反派,他派卡魔拉去取球体。卡魔拉和她的妹妹星云是灭霸的女儿。卡魔拉和星爵打了起来,火箭和格鲁特卷入其中,他们被监禁,然后德拉克斯也加入他们一起越狱。他们试图将球体卖给收藏家,但事情没有成功(实验室爆炸了!),所以罗南得到了球体并试图摧毁柴达星。罗南在一场史诗般的空中/太空战斗后被阻止,接着是一场史诗般的舞蹈大战,最终银河护卫队获胜,并将球体留给了柴达星的新星军团。
MATCH (c:Character)-[:PART_OF]->(g:Group {name:'Guardians of the Galaxy'})
RETURN c.name as guardianOfGalaxy
ORDER BY guardianOfGalaxy
奥创
与此同时,沿着复仇者联盟的剧情线,托尼担心会像奇塔瑞一样出现另一种威胁,于是他创造了一个人工智能(A.I.)叫做奥创。托尼和布鲁斯·班纳使用了第一部电影中洛基的权杖,后来揭示出这根权杖实际上包含心灵宝石,另一颗无限宝石。心灵宝石将无限宝石总数增加到4颗(宇宙魔方、以太、球体、心灵宝石),总共6颗。奥创本应保护地球,但却决定不保护地球(你惊讶吗?),试图制造一场灭绝级事件。奥创还想要一个新身体,但那个计划失败了,取而代之的是一个名为幻视的仿生人被创造出来——结合了心灵宝石、用振金制造的身体以及托尼·斯塔克之前的AI助手J.A.R.V.I.S.。心灵宝石实际上嵌入了幻视的额头。为了阻止奥创的最终计划,新成员猎鹰、战争机器、幻视和旺达·马克西莫夫(猩红女巫)前来帮忙,最终加入了复仇者。电影的最后,灭霸出现并说“好吧,我亲自来”,指的是他想要获取无限宝石的愿望。
MATCH (c:Character)-[r:BECOMES_AVENGER|IS_AVENGER]->(e:Event {name:'Add Avengers'})
WITH c, CASE WHEN type(r) = 'BECOMES_AVENGER' THEN 'New Avenger' ELSE 'Existing Avenger' END as isNew
RETURN c.name as avenger, isNew
ORDER BY avenger

复仇者联盟分裂
在第三阶段,我们发现好事不会长久,复仇者因为一个叫做《索科维亚协议》的事情开始内讧。不仅如此,美国队长的老朋友巴基·巴恩斯,他之前被洗脑成为致命的刺客冬日战士,被指控杀害了瓦坎达国王。瓦坎达国王也是黑豹的父亲,黑豹想要报复冬日战士。复仇者之间之前也有一些内讧——雷神对钢铁侠,雷神对绿巨人,钢铁侠对绿巨人,但这将内讧提升到了一个新的水平。复仇者最终分裂成两派,并招募了更多的超能力者加入混战。我将这两派命名为CapSide(美国队长及其朋友)和IronSide(钢铁侠及其朋友)。在电影复仇者联盟:无限战争中,如果复仇者一开始没有集结,请不要感到惊讶。这场内讧主要发生在电影美国队长:内战中,但它也联系了蚁人,并引入了蜘蛛侠和黑豹,他们各自都有自己的电影。

MATCH (c:Character)-[:PART_OF]->(g:Group)
WHERE g.name IN ['CapSide','IronSide']
RETURN c.name as cantWeJustGetAlong, g.name as groupName
ORDER BY groupName, cantWeJustGetAlong
时间宝石
在另一个平行的故事线中,奇异博士学会了如何通过学习实质上是魔法的东西来对抗超自然、神秘的威胁。奇异博士遇到并学会使用的特殊神器之一是阿加摩托之眼,它包含了第5颗无限宝石,时间宝石。当然,地球又面临着另一个严重的威胁,但凭借时间宝石,奇异博士得以击败多玛姆(来自黑暗维度),并拯救地球。除了时间宝石之外,第三阶段并没有过多深入探讨无限宝石。有一个短暂的镜头显示洛基在阿斯加德传递宇宙魔方,因此此时假定宇宙魔方在洛基手中。此图像显示了将电影与无限宝石联系起来的重要情节点。

复仇者联盟:无限战争
最后,我们以第19部电影复仇者联盟:无限战争来结束前18部电影。灵魂宝石尚未出现。雷神的同伴海姆达尔拥有它吗?它是否藏在瓦坎达的某个地方?根据预告片和抢先文章来看,复仇者、银河护卫队以及其他所有已经引入的非灭霸的漫威角色都将在“复仇者+”一方作战,对抗灭霸。之前,我们在复仇者联盟电影和银河护卫队电影中都有灭霸的客串和提及,所以这部电影应该将他们聚集在一起。
但我刚刚想起一件事——我认为第19部电影实际上可能是两部曲的第一部分,那么它真的会结束吗?我想只有一件事可以做,那就是去看电影,并且不要在片尾字幕开始滚动时离开。你知道重要的未来电影信息通常会在片尾字幕进行到一半时透露出来。
MATCH (c:Character)-[:PART_OF]->(g:Group)
WHERE g.name IN ['AvengersPlus','Guardians of the Galaxy']
RETURN c.name as aLotOfSuperHeroes, g.name as groupName
ORDER BY aLotOfSuperHeroes

数据中还有很多可以探索,所以请随意查看!
MATCH (pp:PlotPoint)-[r:ABOUT]->(stone:InfinityStone),
(pp)-[r2:POSSESSED_BY]->(c:Character),
(pp)-[r3:HAS_LOCATION]->(l:Location)
RETURN pp, r, stone, r2, c, r3, l
此页面是否有帮助?