cocos2D捕鱼达人源代码初学者详解4数字滚动

    数字滚动由两个类实现,数字类UINumber和数字滚动类UIRollNum,都是继承的CCSprite,都是精灵。数字类实现单个数字的上下滚动,数字滚动类实现了界面分数数字的位置设置,分数变化时把分数拆解成单个数字,然后调用数字类赋值,由数字类判断滚动方向,并连续改变精灵帧坐标,实现数字滚动效果。

   数字类详解

   数字类成员变量:

    NumStyle m_style;       //滚动样式
    int m_num;                   //显示的数字
    int m_nPosCur;          //当前的位置
    int m_nPosEnd;          //结束的位置
    int m_nMoveLen;         //每次移动的位置
    CCTexture2D *m_texture; //数字的texture

   数字类的实现方法:

-(id) initWithStyle:(NumStyle) style;//按照格式初始化
-(void) setNumber:(int) num;//设置分数数字,为一位数字
-(void) onRollDown:(ccTime) dt;//数字向上帧向下滚动
-(void) onRollUP:(ccTime) dt;//数字向下帧向上滚动
-(void) setup;//获取数字图片生成精灵帧

    数字类初始化首先设置数字成员都为0,贴图为NULL,然后-(void) setup获取贴图,过程如下:

   UIImage *image = [UIImage imageNamed:@"number.png"];
//    用UIImage加载图像的方法很多,最常用的是下面两种:
//    1、用imageNamed函数
//    [UIImage imageNamed:ImageName];
//    2、用imageWithContentFile的方式加载,例如:
//    1. NSString *filePath = [[NSBundle mainBundle] pathForResource:fileName ofType:extension];
//    2. UIImage *image = [UIImage imageWithContentOfFile:filePath]; 
//    由于第一种方式要写的代码比较少,可能比较多人利用imageNamed的方式加载图像。其实这两种加载方式都有各自的特点。   
//    1)用imageNamed的方式加载时,系统会把图像Cache到内存。如果图像比较大,或者图像比较多,用这种方式会消耗很大的内存,而且释放图像的内存是一件相对来说比较麻烦的事情。例如:如果利用imageNamed的方式加载图像到一个动态数组NSMutableArray,然后将将数组赋予一个UIView的对象的animationImages进行逐帧动画,那么这将会很有可能造成内存泄露。并且释放图像所占据的内存也不会那么简单。但是利用imageNamed加载图像也有自己的优势。对于同一个图像系统只会把它Cache到内存一次,这对于图像的重复利用是非常有优势的。例如:你需要在一个TableView里重复加载同样一个图标,那么用imageNamed加载图像,系统会把那个图标Cache到内存,在Table里每次利用那个图像的时候,只会把图片指针指向同一块内存。这种情况使用imageNamed加载图像就会变得非常有效。  
//    2)利用NSData方式加载时,图像会被系统以数据方式加载到程序。当你不需要重用该图像,或者你需要将图像以数据方式存储到数据库,又或者你要通过网络下载一个很大的图像时,请尽量使用imageWithData的方式加载图像。无论用哪种方式加载图像,图像使用结束后,一定要记得显示释放内存。
//    + (UIImage *)imageNamed:(NSString *)name导致的内存问题
//    这种方法在application bundle的顶层文件夹寻找名字的图象 , 如果找到图片, 系统缓存图象。图片内容被加载到系统内存中,使用时直接引用到系统内存。
//    所以当图片比较大时,程序使用的内存会迅速上升导致内存警告并退出。  
//    特别在使用Interface Builder建立界面时,如果直接拖动UIImageView 并设置image的图片名称。InterfaceBuilder 正是通过UIImage 类的imageName方法加载图片。图片被缓存,导致内存使用较大。且无法释放,即使release掉 UIImageView也无济于事。
    m_texture = [[CCTexture2D alloc]initWithImage:image]; //CCTexture2D表示精灵包含的图片,范围是整张图片
    CCSpriteFrame *frame = [CCSpriteFrame frameWithTexture:m_texture rect:CGRectMake(0, 0, NUM_WIDTH, NUM_HEIGHT)];
//    CCSPriteFrame是帧,它是组成动画的一部 分,CCSPriteFrame的成员变量中有一个Texture,用帧创建精灵,其实就是用帧的Texture创建精灵,当精灵切换帧 时,Texture也会随之更换,精灵就会呈现不同的形态,以次达到动画的效果。这里大家可以理解为,Texture和Frame都可以构成一个精灵对象。


  然后用setNumber 设置显示的数字

    m_nPosCur = NUM_HEIGHT * m_num;//当前显示单个数字的位置为数值乘以高度
    m_nPosEnd = NUM_HEIGHT * num;//需要更换的单个数字的位置为数值乘以高度
    if (NumStyleNormal == m_style) {//根据格式判断移动速度。
        m_nMoveLen = 4;//数字图片精灵每次移动距离,数值越大移动速度越快。
    }

    if (m_num > num) {//如果当前数字大于更换数字就向上滚动,例如当前数字5,更换为数字1,按图片的滚动方向为向下滚动,那怎么理解呢?图片向下滚动是通过帧向上移动实现的。
        [self schedule:@selector(onRollUP:) interval:0.03];  //每0.03秒执行一次onRollUP方法
//        Schedule是cocos2d中的一个很重要的机制,它的功能和CCAction有相似的地方,都是执行一种行为;不同之处在于,schedule是通过调用方法来执行逻辑的,而且他它内部还有个计时器,可以每隔一定的时间调用一次,反复循环,直到手动将其停止或者节点被删除(暂停)。这里的参数selector就是执行的方法,interval是间隔时间(秒),
//        cocos2d中的schedule有两种作用
//        1)定时执行方法,例如每隔3秒钟执行一次方法fire
//        看例子:
//        - (id) init{
//            if((self = [super init])){
//                [game addChild:self]
//                [self schedule:@selector(fire) interval:3];
//            }
//            return self;
//        }
//        - (void) fire{
//            NSLog(@"fire");
//        }    
//        2)延时执行方法,例如5秒种后执行方法destory
//        看例子:
//        - (id) init{
//            if((self = [super init])){
//                [game addChild:self]
//                [self schedule:@selector(destory) interval:5];
//            } 
//            return self; 
//        } 
//        - (void) destory{ 
//            NSLog(@"destory"); 
//            [self unschedule:@selector(destory)];//解除调度 
//            [self.parent removeChild:self cleanup:YES]; 
//        }
    }
    else {
        [self schedule:@selector(onRollDown:) interval:0.03];//每0.03秒执行一次onRollDown方法
//        @selector是什么
//        一种类型 SEL
//        代表你要发送的消息(方法), 跟字符串有点像, 也可以互转.
//        是能让Objective-C动态调用方法的玩意.      
//        可以理解为类似函数指针的东西     
//        其实就是消息响应函数
//        选一个消息响应的函数地址给你的action 
//        @selector(function_name) 即取得一个function的id
//        函数指针 本质上讲, 是 object-c 的动态后绑定技术 可以通过字符串 访问的函数指针
//        @selector(xxxx)的作用是找到名字为xxxx的方法。
//        一般用于[a performSelector:@selector(b)];就是说去调用a对象的b方法,和[a b];的意思一样,但是这样更加动态一些。
//        返回的类型是SEL,看方法说明的时候如果参数类型是SEL,那么就是要接受@selector(xxxx)返回的值的那种了。
//        可以理解 @selector()就是取类方法的编号,他的行为基本可以等同C语言的中函数指针,只不过C语言中,可以把函数名直接赋给一个函数指针,而Object-C的类不能直接应用函数指针,这样只能做一个@selector语法来取.


  onRollDown 帧向下滚动图片向上滚动
    m_nPosCur += m_nMoveLen;//当前y坐标加每次移动长度
    if (m_nPosCur >= m_nPosEnd) {//如果移动到新位置就结束
        m_nPosCur = m_nPosEnd;//更改当前位置为新位置
        [self unschedule:@selector(onRollDown:)];//解除选择器方法
    CCSpriteFrame *frame = [CCSpriteFrame frameWithTexture:m_texture rect:CGRectMake(0, m_nPosCur, NUM_WIDTH, NUM_HEIGHT)];//使帧坐标下移则图片上移
//    精灵在创建之后,它的contentSize便不会再发生变化。CCAnimate的实现通过setDisplayFrame来实现,setDisplayFrame通过setTexture来实现的, 仅仅是添加了修改rect的相应操作。所以,通过CCAnimate和setDisplayFrame可以修改精灵的contentSize,通过setTexture不能修改对应的contentSize
}
onRollUP 帧向上滚动图片向下滚动

    m_nPosCur -= m_nMoveLen;//当前y坐标减每次移动长度
    if (m_nPosCur <= m_nPosEnd) {//如果移动到新位置就结束
        m_nPosCur = m_nPosEnd;//更改当前位置为新位置
        [self unschedule:@selector(onRollUP:)];
    CCSpriteFrame *frame = [CCSpriteFrame frameWithTexture:m_texture rect:CGRectMake(0, m_nPosCur, NUM_WIDTH, NUM_HEIGHT)];

    数字滚动类主要实现数字在界面的位置布局,及改变总分数的数值。

    成员变量:

    int m_nNumber;              //显示的数字
    int m_maxCol;               //最大显示位数
//    NSMutableArray可变对象数组
//    [NSMutableArray arrayWithCapacity:6] :初始化可变数组对象的长度,如果后面代码继续添加数组超过长度6以后NSMutableArray的长度会自动扩充,6是自己可以设置的颗粒度。
//    [array addObject:...] : 向可变数组尾部添加数据对象。
//    [array addObjectsFromArray:..] :向可变数组尾部添加一个数组对象。
//    NSArray 不可变数组
//    [array count] : 数组的长度。
//    [array objectAtIndex 0]: 传入数组脚标的id 得到数据对象。
//    [arrayWithObjects; ...] :向数组对象初始化赋值。这里可以写任意对象的指针,结尾必须使用nil。
    NSMutableArray *numArray;   //存放每个数字的数组
    CGPoint m_point;            //坐标
    bool  zeroFill;             //是否开启0填充
    NumStyle style;             //滚动样式

实现方法如下:

-(void) rebuildEffect;//更新分数数字
-(void) clearEffect;//初始化分数数字,全部为0
-(int) getNumber;//获得当前显示分数数字
-(void) setNumber:(int)num;//设置新分数数字

rebuildEffect 重新设置每位数字

//    while语句的原型是while(表达式)语句,当表达式为非0值时,执行while语句中的嵌套语句。       
//    那么while(1)其中1代表一个常量表达式,他永远不会等于0。所以,循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止
    while (1) {
        if (num<=0) {//如果现实的数字是0
            if(m_maxCol<=i && zeroFill)//判断是否是最后数字,如果是就退出while()循环
            break;
        }
        int showNum = num%10;//num%10则取出当前十进制位数的值,如9987,则获取的数字为7.
        UINumber* pNumber = [numArray objectAtIndex:i];
        [pNumber setNumber:showNum];//设置数字产生滚动
        i++;
        num = num/10;//当前数字除以10,把已经设置完毕的数字去掉,继续循环设置下一位数字。

clearEffect初始化每位数字

[self removeChild:pNumber cleanup:YES];//如果有精灵,就循环全部删除

[numArray removeAllObjects];//把精灵数组清空

for (int i=0; i< m_maxCol; i++) {//生成6个图片精灵
        UINumber* pNumber = [[UINumber alloc]initWithStyle:style];
        [numArray addObject:pNumber];
        [pNumber setNumber:0];
        [pNumber setPosition:CGPointMake(m_point.x-i*NUM_WIDTH, m_point.y)];//依次向左边显示
        [pNumber setAnchorPoint:CGPointMake(1, 0.5)];//图片setPosition时的点在图片上所处的位置.取值范围0-1,0,0表示左下角,1,1表示右上角,0.5,0.5表示中心点.
        [self addChild:pNumber z:100];//z:是指添加的ZOrder值,ZOrder是指该成员的层级(也可以说深度),z值大的成员在z值小的成员的上面;

    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
│ creator.d.ts │ global.d.ts │ jsconfig.json │ list.txt │ project.json │ README.md │ template-banner.png │ template.json │ tsconfig.json │ ├─assets │ │ animate.meta │ │ audio.meta │ │ bydrbg.mp3 │ │ bydrbg.mp3.meta │ │ prefabs.meta │ │ resources.meta │ │ Scene.meta │ │ Script.meta │ │ Texture.meta │ │ │ ├─animate │ │ coin_up.anim │ │ coin_up.anim.meta │ │ fish_bigred_die.anim │ │ fish_bigred_die.anim.meta │ │ fish_bigred_run.anim │ │ fish_bigred_run.anim.meta │ │ fish_denglong_die.anim │ │ fish_denglong_die.anim.meta │ │ fish_denglong_run.anim │ │ fish_denglong_run.anim.meta │ │ fish_fuyi_die.anim │ │ fish_fuyi_die.anim.meta │ │ fish_fuyi_run.anim │ │ fish_fuyi_run.anim.meta │ │ fish_gui_die.anim │ │ fish_gui_die.anim.meta │ │ fish_gui_run.anim │ │ fish_gui_run.anim.meta │ │ fish_hailuoshuimu_die.anim │ │ fish_hailuoshuimu_die.anim.meta │ │ fish_hailuoshuimu_run.anim │ │ fish_hailuoshuimu_run.anim.meta │ │ fish_hetun_die.anim │ │ fish_hetun_die.anim.meta │ │ fish_hetun_run.anim │ │ fish_hetun_run.anim.meta │ │ fish_jinshayu_die.anim │ │ fish_jinshayu_die.anim.meta │ │ fish_jinshayu_run.anim │ │ fish_jinshayu_run.anim.meta │ │ fish_red_die.anim │ │ fish_red_die.anim.meta │ │ fish_red_run.anim │ │ fish_red_run.anim.meta │ │ fish_shayu_die.anim │ │ fish_shayu_die.anim.meta │ │ fish_shayu_run.anim │ │ fish_shayu_run.anim.meta │ │ fish_shuimu_die.anim │ │ fish_shuimu_die.anim.meta │ │ fish_shuimu_run.anim │ │ fish_shuimu_run.anim.meta │ │ fish_yellow_die.anim │ │ fish_yellow_die.anim.meta │ │ fish_yellow_run.anim │ │ fish_yellow_run.anim.meta │ │ gold_down.anim │ │ gold_down.anim.meta │ │ net_1.anim │ │ net_1.anim.meta │ │ net_2.anim │ │ net_2.anim.meta │ │ net_3.anim │ │ net_3.anim.meta │ │ net_4.anim │ │ net_4.anim.meta │ │ net_5.anim │ │ net_5.anim.meta │ │ net_6.anim │ │ net_6.anim.meta │ │ net_7.anim │ │ net_7.anim.meta │ │ silver_down.anim │ │ silver_down.anim.meta │ │ weapon_level_1.anim │ │ weapon_level_1.anim.meta │ │ weapon_level_2.anim │ │ weapon_level_2.anim.meta │ │ weapon_level_3.anim │ │ weapon_level_3.anim.meta │ │ weapon_level_4.anim │ │ weapon_level_4.anim.meta │ │ weapon_level_5.anim │ │ weapon_level_5.anim.meta │ │ weapon_level_6.anim │ │ weapon_level_6.anim.meta │ │ weapon_level_7.anim │ │ weapon_level_7.anim.meta │ │ │ ├─audio │ │ bydrbg.mp3 │ │ bydrbg.mp3.meta │ │ │ ├─prefabs │ │ bullet.prefab │ │ bullet.prefab.meta │ │ coins_down.prefab │ │ coins_down.prefab.meta │ │ coins_up.prefab │ │ coins_up.prefab.meta │ │ fish_node.prefab │ │ fish_node.prefab.meta │ │ net.prefab │ │ net.prefab.meta │ │ │ ├─resources │ │ fishconfig.json │ │ fishconfig.json.meta │ │ │ ├─Scene │ │ mainscene.fire │ │ mainscene.fire.meta │ │ │ ├─Script │ │ │ Bullet.ts │ │ │ Bullet.ts.meta │ │ │ CoinController.ts │ │ │ CoinController.ts.meta │ │ │ Coins.ts │ │ │ Coins.ts.meta │ │ │ Fish.ts │ │ │ Fish.ts.meta │ │ │ FishType.ts │ │ │ FishType.ts.meta │ │ │ FluxayEffect.ts │ │ │ FluxayEffect.ts.meta │ │ │ FluxayFrag.ts │ │ │ FluxayFrag.ts.meta │ │ │ Game.ts │ │ │ Game.ts.meta │ │ │ Lib.meta │ │ │ Net.ts │ │ │ Net.ts.meta │ │ │ NumUp.ts │ │ │ NumUp.ts.meta │ │ │ WaterWaveEffect.ts │ │ │ WaterWaveEffect.ts.meta │ │ │ WaterWaveFrag.ts │ │ │ WaterWaveFrag.ts.meta │ │ │ Weapon.ts │ │ │ Weapon.ts.meta │ │ │ │ │ └─Lib │ │ Fetch.js │ │ Fetch.js.meta │ │ │ └─Texture │ bg_buyu2.jpg │ bg_buyu2.jpg.meta │ cointextures.plist │ cointextures.plist.meta │ cointextures.png │ cointextures.png.meta │ game_bg.jpg │ game_bg.jpg.meta │ singleColor.png │ singleColor.png.meta │ startbg.jpg │ startbg.jpg.meta │ textures.plist │ textures.plist.meta │ textures.png │ textures.png.meta │ timer.plist │ timer.plist.meta │ timer.png │ timer.png.meta │ ├─library │ │ uuid-to-mtime.json │ │ │ └─imports │ ├─00 │ │ 0004d1cf-a0ad-47d8-ab17-34d3db9d35a3.json │ │ │ ├─01 │ │ 01821c38-18f1-4a1f-b1c0-dac8df856a9b.json │ │ 01857e81-46bf-45c5-b320-c38e79536090.json │ │ │ ├─02 │ │ 0297aab2-9482-4fc6-ac87-d68d50d5f2f1.json │ │ 02e525be-7b9a-4b62-ab99-ee172db2bc88.json │ │ │ ├─03 │ │ 03df0651-a189-4b05-a646-29981a15dee3.json │ │ 03e50ffb-cb1a-4afb-aede-3ac3ac31698f.json │ │ │ ├─04 │ │ 048a219b-da01-4684-8b54-aa1653c502b3.json │ │ 04e9cc79-504b-41ff-a96e-99247a6149c2.json │ │ │ ├─05 │ │ 05b6ae1c-08ba-4230-8b5b-dee0f9af12f5.json │ │ │ ├─07 │ │ 072c5ae0-8e92-4b42-a7c5-3540dcce1d2a.json │ │ 075496c2-3054-4116-b28a-6a3ce56c9b82.json │ │ │ ├─09 │ │ 09dcbf2e-7e12-4484-b274-a90a5dbea247.json │ │ │ ├─0a │ │ 0abcbfc1-d6be-4e67-bd69-493d74d32d96.json │ │ │ ├─0b │ │ 0bdf1072-1a07-4fa5-b855-b5bce89525b0.json │ │ 0bf3fea6-f31b-484d-a4dd-64971cef270b.json │ │ │ ├─0c │ │ 0c3ad56d-ba91-4ea3-a026-9b500145f231.json │ │ 0c7ca89b-b169-4b30-b1b8-29a079aa5ee3.json │ │ │ ├─0d │ │ 0d784963-d024-4ea6-a7db-03be0ad63010.json │ │ │ ├─0e │ │ 0e51b981-a3d9-49cc-aa9c-404e0efeda5a.json │ │ 0e61ade8-dc34-4136-b740-47260ebeea1e.json │ │ 0e7af90c-9613-4d76-a5f4-b12ac5730edd.json │ │ 0eb2a745-93e2-49ac-b774-0109a77961fd.json │ │ │ ├─0f │ │ 0f059f64-4f38-4b3e-b13e-984931a6e553.json │ │ 0f9ca701-1737-4790-872b-7a0bb56dec66.json │ │ │ ├─11 │ │ 11ae9247-d3ae-483f-97c1-1fdd824f486d.json │ │ │ ├─12 │ │ 124733b0-c72d-4ddb-ac93-6013a1069762.json │ │ │ ├─13 │ │ 13745ebd-1b5f-4f37-b312-3d2943b17919.json │ │ │ ├─14 │ │ 144ba423-9342-4f87-a7ff-6445353a9d84.json │ │ │ ├─17 │ │ 17692484-19b5-47ef-877e-04329f343065.json │ │ 17abdf57-fe91-42bd-9ca5-8effe2f19648.json │ │ │ ├─18 │ │ 18f693fa-b5b1-47ed-a94d-ebdd89f8fbc1.json │ │ │ ├─19 │ │ 19ccf57e-b91f-4a08-ab53-797df5a850d8.json │ │ │ ├─1a │ │ 1a32fc76-f0bd-4f66-980f-56929c0ca0b3.json │ │ │ ├─1b │ │ 1b2a844b-1d1f-4e9e-8332-ae9c394b990e.json │ │ 1b42dc08-8b1c-4686-be87-0371affccd09.json │ │ 1b5f84d9-d84c-466f-877a-66499c80168c.json │ │ │ ├─1c │ │ 1c4b1f77-a56b-4b8e-8768-fe614ca7795b.json │ │ │ ├─1d │ │ 1d08772e-5067-4fe7-a948-fe4c265239e4.json │ │ 1dbbd2a0-29b7-4b0e-b4b9-4545f9b12435.json │ │ 1dda02c4-5feb-4e65-afb8-b507f7536b15.json │ │ │ ├─1f │ │ 1f55e3be-b89b-4b79-88de-47fd31018044.json │ │ │ ├─20 │ │ 20cc7edd-f3fd-465a-a4d0-409af2f2d0cc.js │ │ 20cc7edd-f3fd-465a-a4d0-409af2f2d0cc.js.map │ │ 20d2864e-2849-4e8f-96f8-86a092fc6b54.json │ │ 20efa081-6c83-4ca6-9ebb-f22a338205ca.json │ │ │ ├─21 │ │ 216ebe51-1649-444a-a5e1-7ba1810f8e91.json │ │ │ ├─22 │ │ 22cd0693-0a6e-42bd-b506-9939a672cf34.js │ │ 22cd0693-0a6e-42bd-b506-9939a672cf34.js.map │ │ │ ├─23 │ │ 232d2782-c4bd-4bb4-9e01-909f03d6d3b9.json │ │ │ ├─24 │ │ 24362c0b-cd8a-42b4-b0b0-612e46b13c93.json │ │ 2480a30d-1189-4156-9dd9-0e8f923c1563.json │ │ 24d91079-898d-4a00-9162-5fe14ca29ae9.json │ │ 24dd0050-4696-4438-b6f2-ca1c58d7594e.json │ │ 24df14fa-d878-4d23-ab70-c9c53d4da4a7.json │ │ │ ├─25 │ │ 25501932-13d9-4350-8092-03d40ceb1f4a.json │ │ │ ├─26 │ │ 267022d1-2bf5-45af-9a4b-82e19bfba17c.json │ │ 26d9ba0f-0e83-498a-aa4d-e77f74499b9d.json │ │ 26e6fa3f-7118-4ae6-bfe7-ab5ee5508cf5.json │ │ │ ├─27 │ │ 27756ebb-3d33-44b0-9b96-e858fadd4dd4.json │ │ │ ├─28 │ │ 2805584a-6040-4424-96c3-96d103045660.json │ │ 28113253-416b-43f3-9ec6-e0a8162da5bf.json │ │ 286bfe94-1f51-4171-acf3-0d9583d95885.json │ │ 28d1bbbb-4940-470f-a102-ff086930a3b0.json │ │ │ ├─29 │ │ 29158224-f8dd-4661-a796-1ffab537140e.json │ │ │ ├─2a │ │ 2a053610-65c1-4cb7-b86e-0775eceea601.json │ │ │ ├─2b │ │ 2b18009f-267a-4264-a33b-dfd3cfc0b6fd.json │ │ 2b9e3d83-f490-478b-86f1-ef4e5d49907d.json │ │ │ ├─2c │ │ 2c937608-2562-40ea-b264-7395df6f0cea.json │ │ │ ├─2d │ │ 2d2f792f-a40c-49bb-a189-ed176a246e49.json │ │ 2d6e643a-a267-47a0-8154-dbd8f16354ac.json │ │ 2d788c1d-016d-4d67-84a4-ccc98384d993.json │ │ │ ├─2e │ │ 2e4f226c-a1b7-481e-a0ae-f888ef3d3b1b.json │ │ 2ee8e7fb-5e5c-4c9a-9714-38d8c3e578c6.json │ │ │ ├─31 │ │ 31d8962d-babb-4ec7-be19-8e9f54a4ea99.json │ │ │ ├─32 │ │ 32044bd2-481f-4cf1-a656-e2b2fb1594eb.json │ │ │ ├─33 │ │ 33893dd5-677c-4bb0-92af-ee597e1aa1c4.json │ │ 33af693e-d71c-4fde-9afe-88dc94a9f106.json │ │ │ ├─37 │ │ 37b4eef4-871c-401c-bdee-6b9adc01c331.json │ │ │ ├─3b │ │ 3b7d4fe9-3228-4294-99e3-0a390c422252.json │ │ │ ├─3c │ │ 3c324ef3-72e1-4b13-92b1-c6fae373a5ba.json │ │ 3c8a767b-42fa-4515-915c-38007be1049f.json │ │ │ ├─40 │ │ 40176488-8c85-4153-a8ce-1ae91710cf59.json │ │ 40495743-9f8f-4800-9899-66be731160df.json │ │ │ ├─41 │ │ 410fb916-8721-4663-bab8-34397391ace7.json │ │ │ ├─42 │ │ 427469c9-20f7-437c-945e-572fa3297acf.json │ │ 42bbc18a-0c68-4256-86c0-2fb447967da1.json │ │ │ ├─43 │ │ 430f802a-2866-40fe-919d-8ca8ea6e5676.json │ │ 43cb34c2-e40e-48a8-97e7-2ceeeb4a42eb.json │ │ │ ├─45 │ │ 456d1b90-1c41-4cd9-b7ef-aac447a7d476.json │ │ │ ├─46 │ │ 46994b4c-e334-4bdb-9966-5aa49c63b10e.json │ │ 46ff724b-9704-40a8-a728-9eb6eb5ca6d7.json │ │ │ ├─48 │ │ 488d9c1c-f5f6-4d16-ae16-344c3df2e63d.json │ │ │ ├─49 │ │ 491b8a0a-4d70-4997-96d4-e7982d0e1a63.json │ │ │ ├─4a │ │ 4a37dd57-78cd-4cec-aad4-f11a73d12b63.json │ │ 4a913230-31ce-4f9c-a9ab-68235d744c83.json │ │ 4af5e771-080d-4880-8ec6-2dc4f67995ed.js │ │ 4af5e771-080d-4880-8ec6-2dc4f67995ed.js.map │ │ │ ├─4b │ │ 4bf4c93a-d991-4949-a482-881f241e4141.json │ │ 4bfccf2c-a16a-41a5-8f54-bd4bfbe19e20.js │ │ 4bfccf2c-a16a-41a5-8f54-bd4bfbe19e20.js.map │ │ │ ├─4d │ │ 4d46a583-b2bf-4562-b699-f3680c780bfe.json │ │ │ ├─4e │ │ 4e4e81b6-df38-4854-99dc-0a674ef0f2b5.json │ │ │ ├─4f │ │ 4f32ff9f-0e4b-4c57-a034-89bc04432731.json │ │ 4fa9903b-7d83-447c-8d3d-cb8eb4461dde.json │ │ │ ├─51 │ │ 51e2c28e-adf5-4e15-b2fd-8c82bf7e5953.json │ │ 51fdd00f-5ded-4399-b54f-c214f5d979f6.json │ │ │ ├─53 │ │ 533b30b8-8dd0-40f5-8557-52e0fd88042e.json │ │ │ ├─54 │ │ 5400c248-8d8b-4118-948f-81e2ec367c7e.json │ │ 54a605ee-9169-41fa-af39-f3981e5f1f8c.json │ │ │ ├─55 │ │ 559d3fe0-dc90-45a5-9993-1afec6785d88.json │ │ │ ├─56 │ │ 56283616-8081-4bb2-a8c8-8570ecff53a6.json │ │ 5694850a-e9f3-4870-83d1-623c6ed25bf9.json │ │ │ ├─57 │ │ 572dc32c-4434-4835-98b0-88f7ffa5dc90.json │ │ │ ├─59 │ │ 5965ffac-69da-4b55-bcde-9225d0613c28.json │ │ 59861bb3-ff57-41c9-a255-b9182c03047f.json │ │ 59c940d6-5384-4f29-ad18-11cda8fc43aa.json │ │ │ ├─5c │ │ 5c3bb932-6c3c-468f-88a9-c8c61d458641.json │ │ │ ├─5d │ │ 5d6c4aee-f038-4aea-9857-ce97168ed4c4.json │ │ │ ├─5e │ │ 5e1c3913-a3e7-480e-a203-6a0fd274ec7e.json │ │ │ ├─5f │ │ 5fe5dcaa-b513-4dc5-a166-573627b3a159.json │ │ │ ├─60 │ │ 600c098a-ab62-4154-b9d8-666aab617d30.json │ │ │ ├─61 │ │ 61accde8-fde1-402b-ab58-bdd28a3942e6.json │ │ 61aeb05b-3b32-452b-8eed-2b76deeed554.json │ │ │ ├─63 │ │ 635335fc-42e5-43f5-b0be-97460d5686b5.json │ │ │ ├─64 │ │ 64dbebaa-3b5b-431f-a57f-dcf131530f35.json │ │ │ ├─65 │ │ 6533f1f0-9f14-4d12-8280-7795e52f14e9.json │ │ 656fc88c-21df-4d04-98f3-fbdc764025fb.json │ │ 6572b388-40aa-4468-8bee-c861eee04a25.json │ │ │ ├─66 │ │ 6694055d-5d1e-437b-9ccc-14f0b0147d64.json │ │ 66cbd9ed-1825-4b25-9682-bf94641784f7.json │ │ │ ├─67 │ │ 6741d111-7225-47e8-b609-9782145368db.json │ │ 67b03c3d-dc4d-485b-8204-c57894f449d9.json │ │ 67e68bc9-dad5-4ad9-a2d8-7e03d458e32f.json │ │ │ ├─68 │ │ 6827c9a9-7400-47f8-9b91-82b413347226.json │ │ 6827ca32-0107-4552-bab2-dfb31799bb44.json │ │ 682ddab7-e1ff-414f-b88d-abc2b3f11763.json │ │ │ ├─69 │ │ 69da6bdc-7062-44a1-90fc-0b6c635a1e4e.js │ │ 69da6bdc-7062-44a1-90fc-0b6c635a1e4e.js.map │ │ │ ├─6c │ │ 6c0051df-32ee-4fa6-b474-730cf9e6788b.js │ │ 6c0051df-32ee-4fa6-b474-730cf9e6788b.js.map │ │ 6c118523-5e25-4f0d-b567-2991124e7457.json │ │ 6c8a93d9-b2fe-438f-b279-e0bf0eae16d9.json │ │ 6cb54e84-34bc-4922-949c-2c66e9d36196.json │ │ │ ├─6d │ │ 6d7f789f-25c8-4fec-bca6-af1472c43469.json │ │ 6df372f2-5cb4-48da-adce-172889222312.json │ │ │ ├─6e │ │ 6e299c95-2a3d-4dd3-9325-b2ed01cdf301.json │ │ │ ├─6f │ │ 6f2e4942-4c66-4494-811b-e525737d59b2.json │ │ │ ├─70 │ │ 70ae7bf2-0452-4e6f-bae3-740cd4589a33.json │ │ │ ├─71 │ │ 7164f049-b7d6-478d-998f-50d717232a71.json │ │ 7168db62-0edc-42e5-be5d-682cf6c4a165.json │ │ 71c79991-d8b2-4f24-a925-c40fe899c367.json │ │ │ ├─72 │ │ 72a723f9-ff5d-4c51-a489-df9bea196a74.json │ │ │ ├─73 │ │ 732de79f-ab8f-415f-9778-2cd265015725.json │ │ 737ababa-1a14-4243-885b-93e49fbe4bbc.js │ │ 737ababa-1a14-4243-885b-93e49fbe4bbc.js.map │ │ 739837b6-1850-4236-8607-26c1b6e513be.json │ │ 73a32fb7-2c82-4c85-9345-907c97db0de9.json │ │ │ ├─74 │ │ 7428782d-0a10-4fd3-88dd-97d08ec74c8d.json │ │ 744909da-1944-4ff8-a6c1-c534ca716fa8.json │ │ 74da5f94-89c9-4ad1-9d35-d187db055157.json │ │ │ ├─75 │ │ 75f668ca-95a5-435c-9eda-2bebf4fde8e0.json │ │ │ ├─76 │ │ 7626cb3b-184f-48eb-b186-700eaec22e95.json │ │ │ ├─77 │ │ 77fdf1a0-c06c-4621-8890-6c42b3c7e81c.json │ │ │ ├─78 │ │ 785a442c-3ceb-45be-a46e-7317f625f3b9.json │ │ 78dcac94-d4b4-4d54-9d54-125f7905fffe.json │ │ │ ├─79 │ │ 79a836c2-efa1-4f55-9d83-e7e01cc5fa7e.json │ │ 79cc5f08-fbce-47ec-822c-3c3eb5e30446.json │ │ │ ├─7a │ │ 7a38dcd7-81ec-418c-9d2d-d7e4de90456b.json │ │ 7ac60e40-4eeb-4517-aeeb-04cbc6be0dc9.json │ │ │ ├─7d │ │ 7d4ffd94-42d6-4045-9db7-a744229adfc4.json │ │ 7d9784a9-977e-4f10-8da2-927c4375d82b.json │ │ 7de03a80-4457-438d-95a7-3e7cdffd6086.json │ │ │ ├─7e │ │ 7e54bfbd-abf1-4b07-848d-ed6be5dd385c.json │ │ 7e67aa7f-1a25-4a89-a67b-51988117ae87.json │ │ │ ├─7f │ │ 7f09d7a1-59bb-4067-bff9-0d801340056a.json │ │ 7f2109fa-9a0f-41bc-89fe-7ecada6ffb46.json │ │ 7f4833b4-635c-4cf1-a0ee-f4dfd5592ac9.json │ │ │ ├─80 │ │ 8034aa6b-550f-474e-9533-9b47aa0f67fa.json │ │ 809a6c37-c698-4f2c-b17e-b11280535f77.json │ │ │ ├─81 │ │ 81d43d3f-aea2-432a-8c4d-7c372b2e8c61.json │ │ │ ├─82 │ │ 82dec17b-cc45-4121-b2ae-50526bf0da75.json │ │ 82dfd553-ef79-44b8-8061-71a0b0b14784.json │ │ │ ├─83 │ │ 83df0103-1a4f-4ab6-a8ce-da84de250baf.json │ │ │ ├─84 │ │ 849190fe-c4f3-4071-9ff2-f028eccc6fd1.json │ │ │ ├─85 │ │ 8539a433-6e37-4e72-8ee8-25199c989f05.json │ │ │ ├─86 │ │ 864c06d9-8e4f-4699-92e0-3641a17a207f.json │ │ 8672ddd8-2ed0-47a7-8a67-54f9bc694fd5.json │ │ 86b1b7c9-e881-4b2f-8359-f58377be70df.json │ │ 86f11e5c-0766-4bcf-b5e4-1b205070130a.json │ │ 86fe4526-9483-4c85-b7c9-b3a4ec696d58.json │ │ │ ├─88 │ │ 88d3f1d1-528c-46e5-b32f-310801a8e6ac.json │ │ 88e79fd5-96b4-4a77-a1f4-312467171014.json │ │ │ ├─89 │ │ 89e7ec20-0962-44ca-b4f7-58afd0d8d1de.json │ │ │ ├─8a │ │ 8a8a9123-067c-4864-8f0b-da0fa58c7a09.json │ │ │ ├─8b │ │ 8b3f724a-58a2-4c3e-8665-8d1b699a987c.json │ │ 8be2ef75-eb72-4325-aa21-ae207cd38ced.json │ │ │ ├─8c │ │ 8c5001fd-07ee-4a4b-a8a0-63e15195e94d.json │ │ 8c784fc2-508c-4cb6-894e-4b65681eed5c.json │ │ 8c877f6b-5c4c-4ebf-9751-7e0195bcbdba.json │ │ 8cdb44ac-a3f6-449f-b354-7cd48cf84061.json │ │ │ ├─8d │ │ 8d70fff5-61e4-41a8-bb57-1937dce06b21.json │ │ 8d8fe451-16b7-43a6-86eb-9dd7148ea07c.json │ │ │ ├─8f │ │ 8fbc3705-06bc-48a8-b67e-adb34c8d2d35.json │ │ │ ├─90 │ │ 90004ad6-2f6d-40e1-93ef-b714375c6f06.json │ │ │ ├─92 │ │ 9292c58e-45ca-4938-ac17-8088f8ef2d17.json │ │ │ ├─93 │ │ 93974307-dddb-4e1d-871b-5069a0de6fd9.json │ │ │ ├─95 │ │ 9568e1ca-5ab7-411e-9b0d-b0e9983bfe91.js │ │ 9568e1ca-5ab7-411e-9b0d-b0e9983bfe91.js.map │ │ │ ├─96 │ │ 96083d03-c332-4a3f-9386-d03e2d19e8ee.json │ │ 96123ee6-d3ed-4ced-8515-85e218046884.json │ │ │ ├─97 │ │ 972b9a4d-47ee-4c74-b5c3-61d8a69bc29f.json │ │ │ ├─98 │ │ 983047c6-a680-4748-9ce6-f39301500861.json │ │ │ ├─99 │ │ 99136961-8bbe-4c5e-b564-505a38657a21.json │ │ │ ├─9a │ │ 9a424810-bfbf-4ca0-9e0b-dd08f789db4c.json │ │ │ ├─9b │ │ 9bbda31e-ad49-43c9-aaf2-f7d9896bac69.json │ │ │ ├─9d │ │ 9d1ca96e-8016-41ad-bee1-51056da1a91a.js │ │ 9d1ca96e-8016-41ad-bee1-51056da1a91a.js.map │ │ 9daee274-564f-4402-a23d-b73f0aff7f51.json │ │ 9df3582b-c5aa-4569-ae31-5df02081671d.json │ │ │ ├─9e │ │ 9ed14bf6-a37e-4942-bab6-75f37fd66e3a.json │ │ │ ├─9f │ │ 9fa7abaf-660d-4f18-952d-997fedfa9271.json │ │ 9fe96c97-616b-4be5-8856-d4cf98fea936.json │ │ │ ├─a1 │ │ a127358b-7c77-4ca9-8c9f-6d5318961079.json │ │ │ ├─a2 │ │ a23235d1-15db-4b95-8439-a2e005bfff91.json │ │ a29eef79-eeb2-4a38-a168-d21bd37e3998.json │ │ a2f88b52-8557-4f10-9346-03e616499968.json │ │ │ ├─a5 │ │ a57528c9-ff21-4770-9755-f2bbab4dc529.json │ │ │ ├─a6 │ │ a6c9935c-ec1b-428a-b2cc-ce83b3a98b49.json │ │ a6f2b813-4d64-4515-be55-7be5e365f84f.json │ │ │ ├─a7 │ │ a7fe1459-80b0-4fce-979a-7a6d1808c962.json │ │ │ ├─a8 │ │ a8445764-7300-4090-a67e-ee101e9278d3.json │ │ │ ├─a9 │ │ a9ed75e3-8e71-46ee-9d9c-75cca81fd5da.json │ │ │ ├─ab │ │ abe14db1-c921-4bea-9560-16b6cfccb47d.json │ │ │ ├─ac │ │ ac7f2e7f-cdeb-4bb0-a947-b43f7fcc19e0.json │ │ │ ├─ad │ │ ad09ac88-3201-4188-8771-21448bb848a1.json │ │ │ ├─ae │ │ ae428ba9-dd0d-41f0-9069-30d9e71407fc.json │ │ ae58eac7-a12e-45e5-9b0e-f20ddb8dde02.json │ │ │ ├─af │ │ afe36ec2-b53a-4048-92dc-bad6bc374c1d.json │ │ │ ├─b1 │ │ b1455a43-9865-40e7-b6e1-366e332962d4.json │ │ b19323a4-50ee-4b39-b830-75517ae143f5.json │ │ │ ├─b2 │ │ b23ee855-4052-4dbb-a70d-26ae11060370.json │ │ │ ├─b3 │ │ b3e846ce-74fe-47a8-8e97-8de07f5c8a63.json │ │ │ ├─b4 │ │ b43014f4-c80d-4d65-91e6-207ca3f7dcc1.json │ │ │ ├─b5 │ │ b575ee15-9c6a-42b7-b333-50e6edb58a85.json │ │ │ ├─b6 │ │ b63d7b96-2120-45f9-ab8f-9a1ce5cafa93.json │ │ b6d24188-4d34-40dc-a4c8-300d8708c3c9.json │ │ │ ├─b7 │ │ b71c29cd-d128-470c-b5f6-a7da4223c03b.json │ │ b727dec4-3622-4410-b50e-519847cb78e9.json │ │ b794eefa-7d9b-4391-a5f1-3eb6b0f30414.json │ │ │ ├─b8 │ │ b855f513-fb18-47ed-ae03-1ce5a4b39e1b.json │ │ │ ├─b9 │ │ b97a8f6f-ee30-4065-b98f-88e1c65bb7c4.json │ │ │ ├─ba │ │ ba99ccbe-4ea0-47e2-9481-e365a4edb9f9.json │ │ badd5ffc-055d-41e8-8e9a-1c857f63c252.json │ │ │ ├─bb │ │ bb0de968-7717-4292-a3ed-ce70ac82cec3.json │ │ │ ├─bd │ │ bda0ef09-db4d-4228-ac65-c7b3297163bc.json │ │ │ ├─be │ │ be0f5b0c-b541-4d97-864b-99d4f4d4c362.json │ │ │ ├─bf │ │ bf0a434c-84dd-4a8e-a08a-7a36f180cc75.json │ │ │ ├─c2 │ │ c20a311f-c967-4121-85f8-fef8d07b4623.json │ │ c24be583-788e-4c8f-9ba8-07a882828313.js │ │ c24be583-788e-4c8f-9ba8-07a882828313.js.map │ │ c2550ec9-9a23-4468-a5eb-b8f1433768dc.json │ │ c2a96c29-680e-4b2d-bedd-10210919a6c1.json │ │ │ ├─c3 │ │ c3312362-a6f4-422e-96a4-58c2dfc7f138.json │ │ c37f6938-70ca-43d7-b627-468f3c3d97a1.json │ │ c3a4c72f-662a-45a1-a781-6b2bc29f55f7.json │ │ c3ac27cf-1902-4e52-a079-16144a0988fe.json │ │ │ ├─c5 │ │ c5e5856f-0015-4060-8388-a1b035371f9b.json │ │ │ ├─c6 │ │ c609ed00-b89b-413f-8014-7de1420df0c9.json │ │ c62e2941-a4ce-4794-addd-80172244bfff.json │ │ c6650e6d-eee1-4285-9782-b2824e396c73.json │ │ │ ├─c8 │ │ c8939c32-8a6c-4e61-b4b1-03903b7c4189.json │ │ │ ├─c9 │ │ c9e2668e-f384-4d9e-9f00-9a776f305e93.json │ │ c9fa51ff-3f01-4601-8f80-325d1b11dab7.json │ │ │ ├─ca │ │ ca8401fe-ad6e-41a8-bd46-8e3e4e9945be.json │ │ ca8eb5f0-4971-4fe4-b043-70bd3e8852e8.json │ │ │ ├─cc │ │ cc0a5259-03ef-4af4-937c-ae5eed9bf4da.json │ │ cca9d123-df61-4770-b32b-356312eca6be.json │ │ │ ├─cd │ │ cd33edea-55f5-46c2-958d-357a01384a36.json │ │ │ ├─ce │ │ ce15d8b7-ace8-4b6e-af96-6ba207fcb646.json │ │ cef0d325-c2d1-494b-98dd-6122288a1da3.json │ │ │ ├─cf │ │ cf8d1692-3353-44df-b824-f6cf10f8b6a1.json │ │ │ ├─d1 │ │ d1b8be49-b0a0-435c-83b7-552bed4bbe35.json │ │ │ ├─d2 │ │ d2c3a687-a636-4a0a-89df-d3b7e5955f5b.json │ │ │ ├─d3 │ │ d3a88e92-7f7d-4fee-ac42-20585efc0efa.json │ │ │ ├─d4 │ │ d46576a2-9546-4479-88d9-15d231e6303e.json │ │ d4fa770e-bad7-4579-98b3-586bfcb77d63.json │ │ │ ├─d9 │ │ d932f480-c4a8-49d6-8cda-a03143e51115.json │ │ │ ├─da │ │ daed04b0-f944-4d6d-b259-e5a314026fa9.json │ │ │ ├─dc │ │ dc0368d4-85a3-4347-9074-c5c0ab836f40.json │ │ dc049123-db43-4e82-8b18-fb47d3e6e8e1.json │ │ │ ├─df │ │ df5cd4b4-43a1-4b36-b361-ea0adbf719c2.json │ │ dfbc7635-b601-4bcb-8274-15dc8f9d92e3.json │ │ │ ├─e0 │ │ e06565e1-e3d4-4c2e-9986-cd913caf2999.json │ │ e084ee88-be20-4d86-bab3-42441eb73fde.json │ │ │ ├─e3 │ │ e39dade0-c7a8-4a27-9578-ad7f965fb7c7.json │ │ │ ├─e4 │ │ e4ad804a-aaeb-4479-b369-3a9ae26f6f80.json │ │ │ ├─e7 │ │ e7aba14b-f956-4480-b254-8d57832e273f.json │ │ e7bbde70-d98b-48cd-9335-7acb5764f593.json │ │ │ ├─e8 │ │ e863428c-a983-48c7-b0d0-461920c514b7.json │ │ e8b93313-2d56-401a-bf4f-d70c1280413b.json │ │ e8da5085-2e13-4166-8f70-503e153cb594.json │ │ │ ├─e9 │ │ e9ec654c-97a2-4787-9325-e6a10375219a.json │ │ │ ├─ea │ │ eacda806-39a0-4be9-bd2c-c78a8acf17dd.json │ │ eaf95c36-27f6-4dd1-8d38-8efec9177ed2.json │ │ │ ├─ef │ │ ef4e8995-c67d-4e7f-a8d4-269b1892ed7e.json │ │ efc6db68-0ffd-4e86-8327-63ff3cf0875b.json │ │ │ ├─f0 │ │ f0048c10-f03e-4c97-b9d3-3506e1d58952.json │ │ f078bd13-a356-4cc4-9291-1dfd9090eeca.json │ │ │ ├─f1 │ │ f1068e87-c6b5-4a2a-8ea4-3c093ae9f95e.json │ │ │ ├─f3 │ │ f34ee3be-c6d1-4bf7-8c6b-4f9a981808d1.json │ │ f3503b44-f03d-4a53-980b-f2406b963696.json │ │ │ ├─f4 │ │ f44cedd7-bea4-46b1-a973-14cb08cd786f.js │ │ f44cedd7-bea4-46b1-a973-14cb08cd786f.js.map │ │ │ ├─f5 │ │ f5f60557-5de7-4edc-abb8-922cdede8809.json │ │ │ ├─f6 │ │ f6d562e3-022e-411c-8306-7920d1740611.json │ │ │ ├─f7 │ │ f770949d-88c7-43bd-9df2-44a8c330375c.json │ │ │ ├─fa │ │ fa40b79d-8f7f-4a70-ac1e-cfa9ea76796f.json │ │ fab2f368-19fc-4e89-bc06-855fd23991f1.json │ │ │ ├─fc │ │ fc121c24-fed6-4a6e-930c-3df392d4c85f.js │ │ fc121c24-fed6-4a6e-930c-3df392d4c85f.js.map │ │ fc97d1ac-acd2-4b62-8239-b47a2ce81af0.json │ │ │ ├─fd │ │ fd73e7ca-d72f-4228-bbfe-d897ab8d3353.js │ │ fd73e7ca-d72f-4228-bbfe-d897ab8d3353.js.map │ │ │ ├─fe │ │ fe7528b1-e993-4d58-b738-a1554922de5e.json │ │ │ └─ff │ ffe33363-ee01-4e41-bdd0-38849e6d56f6.json │ ├─local │ │ assets.json │ │ console.json │ │ hierarchy.json │ │ layout.windows.json │ │ local.json │ │ node-library.json │ │ scene.json │ │ │ └─logs │ project.log │ ├─packages ├─screenshots │ alipay2.jpg │ fish.gif │ fish.gif.meta │ qqgroup.JPG │ wechatpay2.jpg │ ├─settings │ builder.json │ builder.panel.json │ project.json │ └─temp └─quick-scripts └─assets └─Script Bullet.js Bullet.js.map CoinController.js CoinController.js.map Coins.js Coins.js.map Fish.js Fish.js.map FishType.js FishType.js.map FluxayEffect.js FluxayEffect.js.map FluxayFrag.js FluxayFrag.js.map Game.js Game.js.map Net.js Net.js.map NumUp.js NumUp.js.map WaterWaveEffect.js WaterWaveEffect.js.map WaterWaveFrag.js WaterWaveFrag.js.map Weapon.js Weapon.js.map
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值