New mission: revamp the portals to make them look actually tolerable to the eye. They are currently placeholders as of now.
The Gold Network: Soyworld | SNCApedia | SoyPlace


I'm not dead, just inactive for the moment. Faggot (talk) 20:16, 9 April 2026 (UTC)

Template:BibisiLauncher/style.css: Difference between revisions

From SNCApedia, the shit nobody cares about encyclopedia
Jump to navigationJump to search
mNo edit summary
No edit summary
 
(27 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* 1. Missile Path: Starts slow, then accelerates upward */
/* ==============================
@keyframes rocket-launch {
  BIBISI LAUNCHER CSS
  0% { transform: translateY(0); }
  Click-to-launch via :focus
  20% { transform: translateY(-50px); } /* Slow glide phase */
  ============================== */
  100% { transform: translateY(-1500px); } /* Speed phase */
 
.rocket-wrapper {
    display: block;
    position: relative;
    cursor: pointer;
    outline: none;
}
 
.rocket {
    display: block;
}
 
.rocket-explosion {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    opacity: 0;
}
 
/* Trigger animations when clicked */
.rocket-wrapper:focus .rocket,
.rocket-wrapper:active .rocket {
    /* 1. Shake for 0.6 seconds */
    /* 2. Then fly for 2.4 seconds (starts after a 0.6s delay) */
    animation:
        rocket-shake 0.6s linear,
        rocket-fly 2.4s ease-in 0.6s forwards;
}
}


/* 2. Exhaust trail: Spawn at bottom, fade out, grow, and float */
.rocket-wrapper:focus .rocket-explosion,
@keyframes exhaust-trail {
.rocket-wrapper:active .rocket-explosion {
  0% { opacity: 1; transform: scale(0.5); }
    animation: explode 1.2s ease-out forwards;
  100% { opacity: 0; transform: scale(3) translateY(-100px); }
    animation-delay: 3s; /* Triggers exactly when the 3-second flight ends */
}
}


.missile-container {
/* The shake effect */
  position: fixed;
@keyframes rocket-shake {
  bottom: -100px;
    0%, 100% { transform: translate(0, 0) rotate(0deg); }
  visibility: hidden;
    20%      { transform: translate(-3px, 2px) rotate(-5deg); }
  z-index: 9999;
    40%      { transform: translate(3px, -2px) rotate(5deg); }
    60%      { transform: translate(-3px, 2px) rotate(-5deg); }
    80%      { transform: translate(3px, -2px) rotate(5deg); }
}
}


/* This triggers the animations when the class is added via JS/Checkbox hack */
/* The flight: Solid all the way up, then instantly vanishes at the very end */
.launch-active {
@keyframes rocket-fly {
  visibility: visible !important;
    0%    { transform: translateY(0); opacity: 1; }
   animation: rocket-launch 2s cubic-bezier(0.4, 0, 1, 1) forwards;
    99%   { transform: translateY(-110vh); opacity: 1; } /* Stays solid until the end */
    100%  { transform: translateY(-110vh); opacity: 0; } /* Vanishes as explosion starts */
}
}


.exhaust {
@keyframes explode {
   display: inline-block;
    0%   { transform: translateY(-110vh) scale(1); opacity: 1; }
  animation: exhaust-trail 1s ease-out infinite;
    100% { transform: translateY(-110vh) scale(6); opacity: 0; }
}
}

Latest revision as of 12:06, 11 April 2026

/* ==============================
   BIBISI LAUNCHER CSS
   Click-to-launch via :focus
   ============================== */

.rocket-wrapper {
    display: block;
    position: relative;
    cursor: pointer;
    outline: none;
}

.rocket {
    display: block;
}

.rocket-explosion {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    opacity: 0;
}

/* Trigger animations when clicked */
.rocket-wrapper:focus .rocket,
.rocket-wrapper:active .rocket {
    /* 1. Shake for 0.6 seconds */
    /* 2. Then fly for 2.4 seconds (starts after a 0.6s delay) */
    animation: 
        rocket-shake 0.6s linear,
        rocket-fly 2.4s ease-in 0.6s forwards;
}

.rocket-wrapper:focus .rocket-explosion,
.rocket-wrapper:active .rocket-explosion {
    animation: explode 1.2s ease-out forwards;
    animation-delay: 3s; /* Triggers exactly when the 3-second flight ends */
}

/* The shake effect */
@keyframes rocket-shake {
    0%, 100% { transform: translate(0, 0) rotate(0deg); }
    20%      { transform: translate(-3px, 2px) rotate(-5deg); }
    40%      { transform: translate(3px, -2px) rotate(5deg); }
    60%      { transform: translate(-3px, 2px) rotate(-5deg); }
    80%      { transform: translate(3px, -2px) rotate(5deg); }
}

/* The flight: Solid all the way up, then instantly vanishes at the very end */
@keyframes rocket-fly {
    0%    { transform: translateY(0); opacity: 1; }
    99%   { transform: translateY(-110vh); opacity: 1; } /* Stays solid until the end */
    100%  { transform: translateY(-110vh); opacity: 0; } /* Vanishes as explosion starts */
}

@keyframes explode {
    0%   { transform: translateY(-110vh) scale(1); opacity: 1; }
    100% { transform: translateY(-110vh) scale(6); opacity: 0; }
}