Compare commits
2 Commits
8bd4c39adb
...
0293f2fc9c
Author | SHA1 | Date |
---|---|---|
|
0293f2fc9c | |
|
c5a7b01985 |
|
@ -78,11 +78,21 @@
|
|||
maxcharges="4"
|
||||
/>
|
||||
|
||||
<familiar name="Mommy of Two"
|
||||
<passive name="Mommy of Two"
|
||||
description="Sweet, adorable, mischievous!"
|
||||
gfx="mommy_of_two.png"
|
||||
/>
|
||||
|
||||
<familiar name="Mommy of Two Ariel"
|
||||
description="Sweet, adorable, mischievous!"
|
||||
gfx="mommy_of_two_ariel.png"
|
||||
/>
|
||||
|
||||
<familiar name="Mommy of Two Yari"
|
||||
description="Sweet, adorable, mischievous!"
|
||||
gfx="mommy_of_two_yari.png"
|
||||
/>
|
||||
|
||||
<familiar name="Scaly Egg"
|
||||
description="A warming companion."
|
||||
gfx="scaly_egg.png"
|
||||
|
|
140
main.lua
|
@ -136,6 +136,8 @@ CollectibleType.COLLECTIBLE_DRAGON_MARK = Isaac.GetItemIdByName("Dragon Mark")
|
|||
|
||||
-- Familiar Mommy of Two
|
||||
CollectibleType.COLLECTIBLE_MOMMY_OF_TWO = Isaac.GetItemIdByName("Mommy of Two")
|
||||
CollectibleType.COLLECTIBLE_MOMMY_OF_TWO_ARIEL = Isaac.GetItemIdByName("Mommy of Two Ariel")
|
||||
CollectibleType.COLLECTIBLE_MOMMY_OF_TWO_YARI = Isaac.GetItemIdByName("Mommy of Two Yari")
|
||||
FamiliarVariant.BABY_ARIEL = Isaac.GetEntityVariantByName("Baby Ariel")
|
||||
FamiliarVariant.BABY_YARI = Isaac.GetEntityVariantByName("Baby Yari")
|
||||
|
||||
|
@ -194,22 +196,46 @@ local SIVE_STATS = {
|
|||
local SIVE_HEAD = Isaac.GetCostumeIdByPath("gfx/characters/players/03_Sive_Head.anm2")
|
||||
|
||||
-- ON PLAYER INIT!! -- GIVE EM STUFF
|
||||
function Lore:PostPlayerInit( player )
|
||||
if player:GetPlayerType() == ARIEL_TYPE then
|
||||
player:AddNullCostume( ARIEL_HEAD );
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_SUCCUBUS_CHARM, 0, 0);
|
||||
end
|
||||
if player:GetPlayerType() == NERIELLE_TYPE then
|
||||
player:AddNullCostume( NERIELLE_HEAD );
|
||||
end
|
||||
if player:GetPlayerType() == SIVE_TYPE then
|
||||
player:AddNullCostume( SIVE_HEAD );
|
||||
player.SpriteScale = Vector(1.5,1.5);
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_MOMMY_OF_TWO, 0, 0);
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_YALE_HORNS, 0, 0);
|
||||
function Lore:PlayerTypesProperties( resumedGame )
|
||||
if resumedGame == false then
|
||||
print("New Game!")
|
||||
local player = Isaac.GetPlayer(0)
|
||||
if player:GetPlayerType() == ARIEL_TYPE then
|
||||
print("Initializing player: Ariel")
|
||||
|
||||
player:AddNullCostume( ARIEL_HEAD );
|
||||
print("> Costume: ARIEL_HEAD")
|
||||
|
||||
print("> Items:")
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_SUCCUBUS_CHARM, 0, 0);
|
||||
print(" - Succubus Charm")
|
||||
end
|
||||
if player:GetPlayerType() == NERIELLE_TYPE then
|
||||
print("Initializing player: Nerielle")
|
||||
|
||||
print("> Costume: ARIEL_HEAD")
|
||||
player:AddNullCostume( NERIELLE_HEAD );
|
||||
|
||||
end
|
||||
if player:GetPlayerType() == SIVE_TYPE then
|
||||
print("Initializing player: Sive")
|
||||
|
||||
print("> Costume: SIVE_HEAD")
|
||||
player:AddNullCostume( SIVE_HEAD );
|
||||
|
||||
print("> Scale: (1.5, 1.5)")
|
||||
player.SpriteScale = Vector(1.5,1.5);
|
||||
|
||||
print("> Items:")
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_YALE_HORNS, 0, 0);
|
||||
print(" - Yale Horns")
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_MOMMY_OF_TWO_YARI, 0, 0);
|
||||
player:AddCollectible( CollectibleType.COLLECTIBLE_MOMMY_OF_TWO_ARIEL, 0, 0);
|
||||
print(" - Mommy of Two")
|
||||
end
|
||||
end
|
||||
end
|
||||
Lore:AddCallback( ModCallbacks.MC_POST_PLAYER_INIT, Lore.PostPlayerInit );
|
||||
Lore:AddCallback( ModCallbacks.MC_POST_GAME_STARTED, Lore.PlayerTypesProperties );
|
||||
|
||||
-- STUFF FOR ENTITIES
|
||||
-- BABY ARIEL!
|
||||
|
@ -247,6 +273,31 @@ Lore:AddCallback( ModCallbacks.MC_POST_PLAYER_INIT, Lore.PostPlayerInit );
|
|||
|
||||
-- STUFF FOR ITEMS
|
||||
|
||||
-- Passive
|
||||
function Lore:PassiveYaleHorns(tear)
|
||||
local player = Isaac.GetPlayer(0) -- get the player entity
|
||||
if player:HasCollectible(CollectibleType.COLLECTIBLE_YALE_HORNS) == true then
|
||||
if yaleTearCount == nil then
|
||||
yaleTearCount = 0
|
||||
end
|
||||
yaleTearCount = yaleTearCount + 1
|
||||
if yaleTearCount == 3 then
|
||||
yaleTearCount = 0;
|
||||
local lookout = Vector(1,0)
|
||||
local at = math.random(1,180)
|
||||
local finalTear = lookout:Rotated(at):Resized(player.ShotSpeed*10)
|
||||
local tearCopy = tear.Variant
|
||||
local newTear = Isaac.Spawn(EntityType.ENTITY_TEAR, tearCopy, 0, player.Position, finalTear, player):ToTear()
|
||||
newTear:SetColor(player.TearColor, 0, 200, 0, 0)
|
||||
local finalTear = lookout:Rotated(at+180):Resized(player.ShotSpeed*10)
|
||||
local tearCopy = tear.Variant
|
||||
local newTear = Isaac.Spawn(EntityType.ENTITY_TEAR, tearCopy, 0, player.Position, finalTear, player):ToTear()
|
||||
newTear:SetColor(player.TearColor, 0, 200, 0, 0)
|
||||
end
|
||||
end
|
||||
end
|
||||
Lore:AddCallback(ModCallbacks.MC_POST_FIRE_TEAR, Lore.PassiveYaleHorns)
|
||||
|
||||
-- Active
|
||||
function Lore:ActivateSuccubusCharm(_Type, RNG)
|
||||
local player = Isaac.GetPlayer(0)
|
||||
|
@ -275,33 +326,34 @@ end
|
|||
Lore:AddCallback( ModCallbacks.MC_POST_PLAYER_UPDATE, Lore.PlayerUpdate );
|
||||
|
||||
|
||||
local BabyArielCount = 0
|
||||
local BabyYariCount = 0
|
||||
local BabyLilDrakeCount = 0
|
||||
|
||||
function Lore:onCache( player, cacheFlag)
|
||||
BabyArielCount = 0
|
||||
BabyYariCount = 0
|
||||
BabyLilDrakeCount = 0
|
||||
if cacheFlag == CacheFlag.CACHE_FAMILIARS then
|
||||
for _, entity in pairs(Isaac.GetRoomEntities()) do
|
||||
if EntityType == EntityType.ENTITY_FAMILIAR then
|
||||
if entity.Variant == FamliarVariant.BABY_ARIEL then
|
||||
if entity.Type == EntityType.ENTITY_FAMILIAR then
|
||||
print(entity.Type, entity.Variant)
|
||||
if entity.Variant == FamiliarVariant.BABY_ARIEL then
|
||||
BabyArielCount = BabyArielCount + 1
|
||||
elseif entity.Variant == FamliarVariant.BABY_YARI then
|
||||
end
|
||||
if entity.Variant == FamiliarVariant.BABY_YARI then
|
||||
BabyYariCount = BabyYariCount + 1
|
||||
elseif entity.Variant == FamliarVariant.LIL_DRAKE then
|
||||
end
|
||||
if entity.Variant == FamiliarVariant.LIL_DRAKE then
|
||||
LilDrakeCount = LilDrakeCount + 1
|
||||
end
|
||||
end
|
||||
end
|
||||
print("FAMILIAR DATA ON INIT")
|
||||
print(" [Ariel] FamiliarVariant:",FamiliarVariant.BABY_ARIEL," Count: ",BabyArielCount)
|
||||
print(" [Yari] FamiliarVariant:",FamiliarVariant.BABY_YARI," Count: ",BabyYariCount)
|
||||
print("[Lil Drake] FamiliarVariant:",FamiliarVariant.LIL_DRAKE," Count: ",BabyLilDrakeCount)
|
||||
while player:GetCollectibleNum(CollectibleType.COLLECTIBLE_MOMMY_OF_TWO) > BabyArielCount do
|
||||
SpawnFollower(FamiliarVariant.BABY_ARIEL, player)
|
||||
|
||||
while player:GetCollectibleNum(CollectibleType.COLLECTIBLE_MOMMY_OF_TWO_ARIEL) > BabyArielCount do
|
||||
BabyArielCount = BabyArielCount + 1
|
||||
SpawnFollower(FamiliarVariant.BABY_ARIEL, player)
|
||||
end
|
||||
while player:GetCollectibleNum(CollectibleType.COLLECTIBLE_MOMMY_OF_TWO) > BabyYariCount do
|
||||
SpawnFollower(FamiliarVariant.BABY_YARI, player)
|
||||
while player:GetCollectibleNum(CollectibleType.COLLECTIBLE_MOMMY_OF_TWO_YARI) > BabyYariCount do
|
||||
BabyYariCount = BabyYariCount + 1
|
||||
SpawnFollower(FamiliarVariant.BABY_YARI, player)
|
||||
end
|
||||
while player:GetCollectibleNum(CollectibleType.COLLECTIBLE_SCALY_EGG) > BabyLilDrakeCount do
|
||||
SpawnFollower(FamiliarVariant.LIL_DRAKE, player)
|
||||
|
@ -326,33 +378,3 @@ function Lore:EvaluateCache( player, cacheFlag )
|
|||
end
|
||||
end
|
||||
Lore:AddCallback(ModCallbacks.MC_EVALUATE_CACHE, Lore.EvaluateCache );
|
||||
|
||||
Lore:AddCallback(ModCallbacks.MC_POST_FIRE_TEAR, function(_, tear)
|
||||
local player = Isaac.GetPlayer(0) -- get the player entity
|
||||
if player:HasCollectible(CollectibleType.COLLECTIBLE_YALE_HORNS) == true then
|
||||
if yaleTearCount == nil then
|
||||
yaleTearCount = 0
|
||||
end
|
||||
yaleTearCount = yaleTearCount + 1
|
||||
if yaleTearCount == 3 then
|
||||
yaleTearCount = 0;
|
||||
local lookout = player:GetAimDirection()
|
||||
local at = math.random(-180,179)
|
||||
local finalTear = lookout:Rotated(at):Resized(player.ShotSpeed*10)
|
||||
local tearCopy = tear.Variant
|
||||
Isaac.Spawn(EntityType.ENTITY_TEAR, tearCopy, 0, player.Position, finalTear, player):ToTear()
|
||||
|
||||
local finalTear = lookout:Rotated(at+180):Resized(player.ShotSpeed*10)
|
||||
local tearCopy = tear.Variant
|
||||
Isaac.Spawn(EntityType.ENTITY_TEAR, tearCopy, 0, player.Position, finalTear, player):ToTear()
|
||||
end
|
||||
end
|
||||
|
||||
if player:GetPlayerType() == ARIEL_TYPE then
|
||||
tear.TearFlags = tear.TearFlags | TearFlags.TEAR_CHARM -- add slowing effect to the tear
|
||||
end
|
||||
|
||||
if player:GetPlayerType() == NERIELLE_TYPE then
|
||||
tear.TearFlags = tear.TearFlags | TearFlags.TEAR_BURN -- add slowing effect to the tear
|
||||
end
|
||||
end)
|
||||
|
|
After Width: | Height: | Size: 1.2 KiB |
|
@ -1,8 +1,8 @@
|
|||
<AnimatedActor>
|
||||
<Info CreatedBy="robot" CreatedOn="04/01/2021 21:03:00" Version="104" Fps="30"/>
|
||||
<Info CreatedBy="robot" CreatedOn="07/01/2021 2:42:23" Version="105" Fps="30"/>
|
||||
<Content>
|
||||
<Spritesheets>
|
||||
<Spritesheet Path="03_Sive_HypnotizingHornyHair.png" Id="0"/>
|
||||
<Spritesheet Path="03_Sive_LavenderPrettyHair.png" Id="0"/>
|
||||
</Spritesheets>
|
||||
<Layers>
|
||||
<Layer Name="head0" Id="0" SpritesheetId="0"/>
|
||||
|
|
Before Width: | Height: | Size: 3.4 KiB |
After Width: | Height: | Size: 2.8 KiB |
Before Width: | Height: | Size: 2.0 KiB After Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 670 B |
After Width: | Height: | Size: 537 B |