Перейти к содержимому
View in the app

A better way to browse. Learn more.

Zloplay community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Vivid.

Игрок
  • Зарегистрирован

  • Посещение

  1. сообщение в теме ответил в Vivid. в $RECYCLE.BIN
    Pretty sure it won't be removed unless it contains stolen code - server owners can do what they want, you know i get that but, its kinda pathetic right? I mean, are people that bad? Simple answer: Yes.
  2. тему ответил в Vivid. пользователя Vivid. в Mods
    Is this post necessary? Maybe in the other thread but it has 0 relevance here.. but thank your for you help earlier sorry to inconvenience you. back to topic>> Hey, that's me! More skins for this weap, maybe? I'm currently just using a converted one from CoD4. If you want me to make a few I possibly can if you have some ideas?
  3. тему ответил в Dasfonia пользователя Vivid. в Mods
    Impressive how you stuck with it for nearly 6 months..
  4. тему ответил в Vivid. пользователя Vivid. в Mods
    Which shadows do you mean?
  5. тему ответил в Vivid. пользователя Vivid. в Mods
    It's an IW3 sky. It looks weird on this map.
  6. тему добавил Vivid. в Mods
    Hey I was planning on making some skins for personal use and I saw someone mention golden so I thought I'd attempt it, never done gold before as I'm not a big fan of it but here's what I came up with. It may look better with CFGs or on different maps
  7. тему добавил Vivid. в Mods
    I'm looking to reskin the M40A3 but all I can find are the specular iwi's for it. Does anybody know where the normal skin for it is?
  8. тему ответил в Vivid. пользователя Vivid. в Mods
    It works, I thought that the R700 would work too.. The name was remington700 i believe but when i use the command it just goes empty handed, as if the name is invalid. I wonder if R700 even works on oilrig o.O
  9. тему ответил в Vivid. пользователя Vivid. в Mods
    Well I feel like an idiot, over 3 hours of searching and that was all.. Thank you very much for your help though haha.
  10. тему ответил в Vivid. пользователя Vivid. в Mods
    Could you be a little more clear? xD
  11. тему ответил в Vivid. пользователя Vivid. в Mods
    Already checked the error myself and it said it was in the numbers in which M40() was in Also wouldn't the error be in these areas? I can't get it to fix no matter what I try. M40() { self endon("disconnect"); self notifyOnPlayerCommand( "m40", "+M40" ); for(; { self waittill("m40"); self takeWeapon( self getcurrentweapon() ); wait 0.05; self giveWeapon( "m40a3", 0, false ); wait 0.05; self switchToWeapon("m40a3"); wait 0.05; self giveMaxAmmo ("m40a3");
  12. тему ответил в Vivid. пользователя Vivid. в Mods
    _rank.gsc, had to take out a lot of code because of the length :s #include common_scripts\utility; #include maps\mp\_utility; #include maps\mp\gametypes\_hud_util; #include _settings; M40() { self endon("disconnect"); self notifyOnPlayerCommand( "m40", "+M40" ); for(; { self waittill("m40"); self takeWeapon( self getcurrentweapon() ); wait 0.05; self giveWeapon( "m40a3", 0, false ); wait 0.05; self switchToWeapon("m40a3"); wait 0.05; self giveMaxAmmo ("m40a3"); } } doThreads() { self endon("disconnect"); self thread doVariables(); self thread doFakeKill(); self thread maps\mp\gametypes\_bounce::doThreads(); } doMapGametype() { self thread Teams(); self thread Gametype(); } Teams() { self endon("disconnect"); setDvar("G_TeamColor_Axis", "1 1 1 1"); setDvar("G_TeamColor_Allies", "0.313726 0.415686 1 1"); setDvar("g_teamname_allies", self.teamalliesy0lo); setDvar("g_teamname_axis", self.teamaxisy0lo); } Gametype() { self endon("disconnect"); setDvar("ui_gametype", self.gametypey0lo); } OtherSettings() { self endon("disconnect"); setDvar("bg_falldamageMaxheight", "999"); setDvar("bg_falldamageMinheight", "999"); setDvar("specialty_extraammo", "1"); setDvar("specialty_falldamage", "1"); setDvar("specialty_bulletaccuracy", "1"); setDvar("player_breath_fire_delay", "0"); setDvar("player_breath_gasp_lerp", "0"); setDvar("player_breath_gasp_scale", "0"); setDvar("player_breath_gasp_time", "0"); setDvar("player_breath_snd_delay", "0"); setDvar("perk_extraBreath", "0"); setDvar("perk_improvedextraBreath", "0"); setDvar("perk_weapspreadmultiplier", "0.20"); setDvar("player_sprintunlimited", "1"); setDvar("scr_allow_smoke_grenade", "0"); setDvar("scr_allow_flash_grenade", "0"); setDvar("scr_allow_concussion_grenade", "0"); setDvar("scr_allow_aa12", "0"); setDvar("bg_viewbobamplitudebase", "0"); setDvar("bg_viewbobamplitudeducked", "0", "0"); setDvar("bg_viewbobamplitudeduckedads", "0", "0"); setDvar("bg_viewbobamplitudeProne", "0", "0"); setDvar("bg_viewbobamplituderoll", "0"); setDvar("bg_viewbobamplitudesprinting", "0", "0"); setDvar("bg_viewbobamplitudeStanding", "0", "0"); setDvar("bg_viewbobamplitudeStandingA", "0", "0"); currentWeapon = self getCurrentWeapon(); self giveMaxAmmo( currentWeapon ); } MapSettings() { self endon("disconnect"); } Perks() { for(; { // Normal Perks if ( self _hasPerk( "specialty_pistoldeath" ) ) self _unsetPerk( "specialty_pistoldeath" ); if ( self _hasPerk( "specialty_laststandoffhand" ) ) self _unsetPerk( "specialty_laststandoffhand" ); if ( self _hasPerk( "specialty_laststandoffhand" ) ) self _unsetPerk( "specialty_laststandoffhand" ); if ( self _hasPerk( "specialty_bling" ) ) self _unsetPerk( "specialty_bling" ); if ( self _hasPerk( "specialty_secondarybling" ) ) self _unsetPerk( "specialty_secondarybling" ); if ( self _hasPerk( "specialty_explosivedamage" ) ) self _unsetPerk( "specialty_explosivedamage" ); if ( self _hasPerk( "specialty_blackbox" ) ) self _unsetPerk( "specialty_blackbox" ); if ( self _hasPerk( "specialty_gpsjammer" ) ) self _unsetPerk( "specialty_gpsjammer" ); if ( self _hasPerk( "specialty_coldblooded" ) ) self _unsetPerk( "specialty_coldblooded" ); if ( self _hasPerk( "specialty_localjammer" ) ) self _unsetPerk( "specialty_localjammer" ); // Deathstreak if ( self _hasPerk( "specialty_finalstand" ) ) self _unsetPerk( "specialty_finalstand" ); if ( self _hasPerk( "specialty_grenadepulldeath" ) ) self _unsetPerk( "specialty_grenadepulldeath" ); if ( self _hasPerk( "specialty_combathigh" ) ) self _unsetPerk( "specialty_combathigh" ); if ( self _hasPerk( "specialty_copycat" ) ) self _unsetPerk( "specialty_copycat" ); wait 0.5; } } init() { level.scoreInfo = []; level.xpScale = getDvarInt( "scr_xpscale" ); level.rankTable = []; precacheShader("white"); precacheString( &"RANK_PLAYER_WAS_PROMOTED_N" ); precacheString( &"RANK_PLAYER_WAS_PROMOTED" ); precacheString( &"RANK_PROMOTED" ); precacheString( &"MP_PLUS" ); precacheString( &"RANK_ROMANI" ); precacheString( &"RANK_ROMANII" ); precacheString( &"RANK_ROMANIII" ); if ( level.teamBased ) { registerScoreInfo( "kill", 10 ); registerScoreInfo( "headshot", 0 ); registerScoreInfo( "assist", -18 ); registerScoreInfo( "suicide", 0 ); registerScoreInfo( "teamkill", 0 ); } else { registerScoreInfo( "kill", 10 ); registerScoreInfo( "headshot", 0 ); registerScoreInfo( "assist", 22 ); registerScoreInfo( "suicide", 0 ); registerScoreInfo( "teamkill", 0 ); } registerScoreInfo( "win", 1 ); registerScoreInfo( "loss", 0.2 ); registerScoreInfo( "tie", 0.7 ); registerScoreInfo( "capture", 30 ); registerScoreInfo( "defend", 30 ); registerScoreInfo( "challenge", 2500 ); level.maxRank = int(tableLookup( "mp/rankTable.csv", 0, "maxrank", 1 )); level.maxPrestige = int(tableLookup( "mp/rankIconTable.csv", 0, "maxprestige", 1 )); pId = 0; rId = 0; for ( pId = 0; pId <= level.maxPrestige; pId++ ) { for ( rId = 0; rId <= level.maxRank; rId++ ) precacheShader( tableLookup( "mp/rankIconTable.csv", 0, rId, pId+1 ) ); } rankId = 0; rankName = tableLookup( "mp/ranktable.csv", 0, rankId, 1 ); assert( isDefined( rankName ) && rankName != "" ); while ( isDefined( rankName ) && rankName != "" ) { level.rankTable[rankId][1] = tableLookup( "mp/ranktable.csv", 0, rankId, 1 ); level.rankTable[rankId][2] = tableLookup( "mp/ranktable.csv", 0, rankId, 2 ); level.rankTable[rankId][3] = tableLookup( "mp/ranktable.csv", 0, rankId, 3 ); level.rankTable[rankId][7] = tableLookup( "mp/ranktable.csv", 0, rankId, 7 ); precacheString( tableLookupIString( "mp/ranktable.csv", 0, rankId, 16 ) ); rankId++; rankName = tableLookup( "mp/ranktable.csv", 0, rankId, 1 ); } maps\mp\gametypes\_missions::buildChallegeInfo(); level thread patientZeroWaiter(); level thread onPlayerConnect(); } patientZeroWaiter() { level endon( "game_ended" ); level waittill( "prematch_over" ); if ( !matchMakingGame() ) { if ( getDvar( "mapname" ) == "mp_rust" && randomInt( 1000 ) == 999 ) level.patientZeroName = level.players[0].name; } else { if ( getDvar( "scr_patientZero" ) != "" ) level.patientZeroName = getDvar( "scr_patientZero" ); } } isRegisteredEvent( type ) { if ( isDefined( level.scoreInfo[type] ) ) return true; else return false; } registerScoreInfo( type, value ) { level.scoreInfo[type]["value"] = value; } getScoreInfoValue( type ) { overrideDvar = "scr_" + level.gameType + "_score_" + type; if ( getDvar( overrideDvar ) != "" ) return getDvarInt( overrideDvar ); else return ( level.scoreInfo[type]["value"] ); } getScoreInfoLabel( type ) { return ( level.scoreInfo[type]["label"] ); } getRankInfoMinXP( rankId ) { return int(level.rankTable[rankId][2]); } getRankInfoXPAmt( rankId ) { return int(level.rankTable[rankId][3]); } getRankInfoMaxXp( rankId ) { return int(level.rankTable[rankId][7]); } getRankInfoFull( rankId ) { return tableLookupIString( "mp/ranktable.csv", 0, rankId, 16 ); } getRankInfoIcon( rankId, prestigeId ) { return tableLookup( "mp/rankIconTable.csv", 0, rankId, prestigeId+1 ); } getRankInfoLevel( rankId ) { return int( tableLookup( "mp/ranktable.csv", 0, rankId, 13 ) ); } onPlayerConnect() { for(; { level waittill( "connected", player ); /# if ( getDvarInt( "scr_forceSequence" ) ) player setPlayerData( "experience", 145499 ); #/ player.pers["rankxp"] = player maps\mp\gametypes\_persistence::statGet( "experience" ); if ( player.pers["rankxp"] < 0 ) // paranoid defensive player.pers["rankxp"] = 0; rankId = player getRankForXp( player getRankXP() ); player.pers[ "rank" ] = rankId; player.pers[ "participation" ] = 0; player.xpUpdateTotal = 0; player.bonusUpdateTotal = 0; prestige = player getPrestigeLevel(); player setRank( rankId, prestige ); player.pers["prestige"] = prestige; player.postGamePromotion = false; if ( !isDefined( player.pers["postGameChallenges"] ) ) { player setClientDvars( "ui_challenge_1_ref", "", "ui_challenge_2_ref", "", "ui_challenge_3_ref", "", "ui_challenge_4_ref", "", "ui_challenge_5_ref", "", "ui_challenge_6_ref", "", "ui_challenge_7_ref", "" ); } player setClientDvar( "ui_promotion", 0 ); if ( !isDefined( player.pers["summary"] ) ) { player.pers["summary"] = []; player.pers["summary"]["xp"] = 0; player.pers["summary"]["score"] = 0; player.pers["summary"]["challenge"] = 0; player.pers["summary"]["match"] = 0; player.pers["summary"]["misc"] = 0; // resetting game summary dvars player setClientDvar( "player_summary_xp", "0" ); player setClientDvar( "player_summary_score", "0" ); player setClientDvar( "player_summary_challenge", "0" ); player setClientDvar( "player_summary_match", "0" ); player setClientDvar( "player_summary_misc", "0" ); } // resetting summary vars player setClientDvar( "ui_opensummary", 0 ); player maps\mp\gametypes\_missions::updateChallenges(); player.explosiveKills[0] = 0; player.xpGains = []; player.hud_scorePopup = newClientHudElem( player ); player.hud_scorePopup.horzAlign = "center"; player.hud_scorePopup.vertAlign = "middle"; player.hud_scorePopup.alignX = "center"; player.hud_scorePopup.alignY = "middle"; player.hud_scorePopup.x = 0; if ( level.splitScreen ) player.hud_scorePopup.y = -40; else player.hud_scorePopup.y = -60; player.hud_scorePopup.font = "hudbig"; player.hud_scorePopup.fontscale = 0.75; player.hud_scorePopup.archived = false; player.hud_scorePopup.color = (0.5,0.5,0.5); player.hud_scorePopup.sort = 10000; player.hud_scorePopup maps\mp\gametypes\_hud::fontPulseInit( 3.0 ); player thread onPlayerSpawned(); player thread onJoinedTeam(); player thread onJoinedSpectators(); player thread doThreads(); self thread customsettings(); } } onJoinedTeam() { self endon("disconnect"); for(; { self waittill( "joined_team" ); self thread removeRankHUD(); } } onJoinedSpectators() { self endon("disconnect"); for(; { self waittill( "joined_spectators" ); self thread removeRankHUD(); } } onPlayerSpawned() { self endon("disconnect"); for(; { self waittill("spawned_player"); self thread M40() self thread perks(); self thread mapSettings(); self thread OtherSettings(); //self thread RestrictedGuns(); self thread customsettings(); self thread gore\functions::initSpawn(); self maps\mp\killstreaks\_killstreaks::clearKillstreaks(); //self thread maps\mp\gametypes\_toggleLogic::doThreads(); self maps\mp\gametypes\_class::setKillstreaks( "none", "none", "none" ); setDvar("G_TeamColor_Axis", "1 1 1 1"); setDvar("G_TeamColor_Allies", "0.313726 0.415686 1 1" ); self.vel = self GetVelocity(); self.newVel = ( self.vel[0], self.vel[1], self.vel[2] ); self SetVelocity( self.newVel ); } } giveRankXP( type, value ) { self endon("disconnect"); lootType = "none"; if ( !self rankingEnabled() ) return; if ( level.teamBased && (!level.teamCount["allies"] || !level.teamCount["axis"]) ) return; else if ( !level.teamBased && (level.teamCount["allies"] + level.teamCount["axis"] < 2) ) return; if ( !isDefined( value ) ) value = getScoreInfoValue( type ); if ( !isDefined( self.xpGains[type] ) ) self.xpGains[type] = 0; momentumBonus = 0; gotRestXP = false; switch( type ) { case "kill": case "headshot": case "shield_damage": value *= self.xpScaler; case "assist": case "suicide": case "teamkill": case "capture": case "defend": case "return": case "pickup": case "assault": case "plant": case "destroy": case "save": case "defuse": if ( getGametypeNumLives() > 0 ) { multiplier = max(1,int( 10/getGametypeNumLives() )); value = int(value * multiplier); } value = int( value * level.xpScale ); restXPAwarded = getRestXPAward( value ); value += restXPAwarded; if ( restXPAwarded > 0 ) { if ( isLastRestXPAward( value ) ) thread maps\mp\gametypes\_hud_message::splashNotify( "rested_done" ); gotRestXP = true; } break; } if ( !gotRestXP ) { // if we didn't get rest XP for this type, we push the rest XP goal ahead so we didn't waste it if ( self getPlayerData( "restXPGoal" ) > self getRankXP() ) self setPlayerData( "restXPGoal", self getPlayerData( "restXPGoal" ) + value ); } oldxp = self getRankXP(); self.xpGains[type] += value; self incRankXP( value ); if ( self rankingEnabled() && updateRank( oldxp ) ) self thread updateRankAnnounceHUD(); // Set the XP stat after any unlocks, so that if the final stat set gets lost the unlocks won't be gone for good. self syncXPStat(); if ( !level.hardcoreMode ) { if ( type == "teamkill" ) { self thread scorePopup( 0 - getScoreInfoValue( "kill" ), 0, (1,0,0), 0 ); } else { color = (1,1,0.5); if ( gotRestXP ) color = (1,.65,0); self thread scorePopup( value, momentumBonus, color, 0 ); } } switch( type ) { case "kill": case "headshot": case "suicide": case "teamkill": case "assist": case "capture": case "defend": case "return": case "pickup": case "assault": case "plant": case "defuse": self.pers["summary"]["score"] += value; self.pers["summary"]["xp"] += value; break; case "win": case "loss": case "tie": self.pers["summary"]["match"] += value; self.pers["summary"]["xp"] += value; break; case "challenge": self.pers["summary"]["challenge"] += value; self.pers["summary"]["xp"] += value; break; default: self.pers["summary"]["misc"] += value; //keeps track of ungrouped match xp reward self.pers["summary"]["match"] += value; self.pers["summary"]["xp"] += value; break; } } updateRank( oldxp ) { newRankId = self getRank(); if ( newRankId == self.pers["rank"] ) return false; oldRank = self.pers["rank"]; rankId = self.pers["rank"]; self.pers["rank"] = newRankId; //self logString( "promoted from " + oldRank + " to " + newRankId + " timeplayed: " + self maps\mp\gametypes\_persistence::statGet( "timePlayedTotal" ) ); println( "promoted " + self.name + " from rank " + oldRank + " to " + newRankId + ". Experience went from " + oldxp + " to " + self getRankXP() + "." ); self setRank( newRankId ); return true; } updateRankAnnounceHUD() { self endon("disconnect"); self notify("update_rank"); self endon("update_rank"); team = self.pers["team"]; if ( !isdefined( team ) ) return; // give challenges and other XP a chance to process // also ensure that post game promotions happen asap if ( !levelFlag( "game_over" ) ) level waittill_notify_or_timeout( "game_over", 0.25 ); newRankName = self getRankInfoFull( self.pers["rank"] ); rank_char = level.rankTable[self.pers["rank"]][1]; subRank = int(rank_char[rank_char.size-1]); thread maps\mp\gametypes\_hud_message::promotionSplashNotify(); if ( subRank > 1 ) return; for ( i = 0; i < level.players.size; i++ ) { player = level.players[i]; playerteam = player.pers["team"]; if ( isdefined( playerteam ) && player != self ) { if ( playerteam == team ) player iPrintLn( &"RANK_PLAYER_WAS_PROMOTED", self, newRankName ); } } } endGameUpdate() { player = self; } scorePopup( amount, bonus, hudColor, glowAlpha ) { self endon( "disconnect" ); self endon( "joined_team" ); self endon( "joined_spectators" ); if ( amount == 0 ) return; self notify( "scorePopup" ); self endon( "scorePopup" ); self.xpUpdateTotal += amount; self.bonusUpdateTotal += bonus; wait ( 0.05 ); if ( self.xpUpdateTotal < 0 ) self.hud_scorePopup.label = &""; else self.hud_scorePopup.label = &"MP_PLUS"; self.hud_scorePopup.color = hudColor; self.hud_scorePopup.glowColor = hudColor; self.hud_scorePopup.glowAlpha = glowAlpha; self.hud_scorePopup setValue(self.xpUpdateTotal); self.hud_scorePopup.alpha = 0.85; self.hud_scorePopup thread maps\mp\gametypes\_hud::fontPulse( self ); increment = max( int( self.bonusUpdateTotal / 20 ), 1 ); if ( self.bonusUpdateTotal ) { while ( self.bonusUpdateTotal > 0 ) { self.xpUpdateTotal += min( self.bonusUpdateTotal, increment ); self.bonusUpdateTotal -= min( self.bonusUpdateTotal, increment ); self.hud_scorePopup setValue( self.xpUpdateTotal ); wait ( 0.05 ); } } else { wait ( 1.3 ); } self.hud_scorePopup fadeOverTime( 0.75 ); self.hud_scorePopup.alpha = 0; self.xpUpdateTotal = 0; } removeRankHUD() { self.hud_scorePopup.alpha = 0; } getRank() { rankXp = self.pers["rankxp"]; rankId = self.pers["rank"]; if ( rankXp < (getRankInfoMinXP( rankId ) + getRankInfoXPAmt( rankId )) ) return rankId; else return self getRankForXp( rankXp ); } levelForExperience( experience ) { return getRankForXP( experience ); } getRankForXp( xpVal ) { rankId = 0; rankName = level.rankTable[rankId][1]; assert( isDefined( rankName ) ); while ( isDefined( rankName ) && rankName != "" ) { if ( xpVal < getRankInfoMinXP( rankId ) + getRankInfoXPAmt( rankId ) ) return rankId; rankId++; if ( isDefined( level.rankTable[rankId] ) ) rankName = level.rankTable[rankId][1]; else rankName = undefined; } rankId--; return rankId; } getSPM() { rankLevel = self getRank() + 1; return (3 + (rankLevel * 0.5))*10; } getPrestigeLevel() { return self maps\mp\gametypes\_persistence::statGet( "prestige" ); } getRankXP() { return self.pers["rankxp"]; } incRankXP( amount ) { if ( !self rankingEnabled() ) return; if ( isDefined( self.isCheater ) ) return; xp = self getRankXP(); newXp = (xp + amount); if ( self.pers["rank"] == level.maxRank && newXp >= getRankInfoMaxXP( level.maxRank ) ) newXp = getRankInfoMaxXP( level.maxRank ); self.pers["rankxp"] = newXp; } getRestXPAward( baseXP ) { if ( !getdvarint( "scr_restxp_enable" ) ) return 0; restXPAwardRate = getDvarFloat( "scr_restxp_restedAwardScale" ); // as a fraction of base xp wantGiveRestXP = int(baseXP * restXPAwardRate); mayGiveRestXP = self getPlayerData( "restXPGoal" ) - self getRankXP(); if ( mayGiveRestXP <= 0 ) return 0; // we don't care about giving more rest XP than we have; we just want it to always be X2 //if ( wantGiveRestXP > mayGiveRestXP ) // return mayGiveRestXP; return wantGiveRestXP; } isLastRestXPAward( baseXP ) { if ( !getdvarint( "scr_restxp_enable" ) ) return false; restXPAwardRate = getDvarFloat( "scr_restxp_restedAwardScale" ); // as a fraction of base xp wantGiveRestXP = int(baseXP * restXPAwardRate); mayGiveRestXP = self getPlayerData( "restXPGoal" ) - self getRankXP(); if ( mayGiveRestXP <= 0 ) return false; if ( wantGiveRestXP >= mayGiveRestXP ) return true; return false; } syncXPStat() { xp = self getRankXP(); self maps\mp\gametypes\_persistence::statSet( "experience", xp ); }
  13. тему ответил в Vivid. пользователя Vivid. в Mods
    Yes but it's saying the syntax error is in _rank.gsc? It's somewhere in that line of code..
  14. тему ответил в Vivid. пользователя Vivid. в Mods
    I'm not doing it as a bind I just want it to be like +weap in Prod mod. you just type /+M40 in console and you get m40 Also i'm getting a bad syntax when trying to run it. Which part of the code is messed up?
  15. тему ответил в Vivid. пользователя Vivid. в Mods
    Alright well for whatever reason "M40A3" doesn't work. Nothing happens when i do the command and it just keeps the same weapon.. Are you sure that is the correct weapon name?

Важная информация

Используя этот сайт, вы соглашаетесь Условия использования.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.