鱼C论坛

 找回密码
 立即注册
查看: 1164|回复: 8

求助大佬!救救孩子!

[复制链接]
发表于 2019-11-12 18:39:20 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
看鱼C的教程自学了一周的python,
勉强算是写出个有界面的东西,
现在的问题时鼠标检测机制不是很灵敏,
求大佬救救孩子吧!!!

话不多说直接上码

  1. import pygame
  2. import os, pygame
  3. from pygame.locals import *
  4. from sys import exit
  5. from random import *
  6. framemenu = pygame.image.load('images/framemenu.png')
  7. framemenu_back = pygame.image.load('images/framemenu_back.png')
  8. framemenu_back_big = pygame.image.load('images/framemenu_back_big.png')
  9. framemenu_high = pygame.image.load('images/framemenu_high.png')
  10. framemenu_high_2 = pygame.image.load('images/framemenu_high_2.png')
  11. framemenu_high_big = pygame.image.load('images/framemenu_high_big.png')
  12. framemenu_low = pygame.image.load('images/framemenu_low.png')
  13. framemenu_low_2 = pygame.image.load('images/framemenu_low_2.png')
  14. framemenu_low_big = pygame.image.load('images/framemenu_low_big.png')

  15. helpmenu = pygame.image.load('images/helpmenu.png')
  16. helpmenu_back = pygame.image.load('images/helpmenu_back.png')
  17. helpmenu_back_big = pygame.image.load('images/helpmenu_back_big.png')
  18. helpmenu_raiders = pygame.image.load('images/helpmenu_raiders.png')
  19. helpmenu_raiders_big = pygame.image.load('images/helpmenu_raiders_big.png')
  20. helpmenu_writer = pygame.image.load('images/helpmenu_writer.png')
  21. helpmenu_writer_big = pygame.image.load('images/helpmenu_writer_big.png')

  22. mainmenu = pygame.image.load('images/mainmenu.png')
  23. mainmenu_help = pygame.image.load('images/mainmenu_help.png')
  24. mainmenu_help_big = pygame.image.load('images/mainmenu_help_big.png')
  25. mainmenu_set = pygame.image.load('images/mainmenu_set.png')
  26. mainmenu_set_big = pygame.image.load('images/mainmenu_set_big.png')
  27. mainmenu_start = pygame.image.load('images/mainmenu_start.png')
  28. mainmenu_start_big = pygame.image.load('images/mainmenu_start_big.png')

  29. raidersmenu = pygame.image.load('images/raidersmenu.png')
  30. raidersmenu_back = pygame.image.load('images/raidersmenu_back.png')
  31. raidersmenu_back_big = pygame.image.load('images/raidersmenu_back_big.png')

  32. setmenu = pygame.image.load('images/setmenu.png')
  33. setmenu_back = pygame.image.load('images/setmenu_back.png')
  34. setmenu_back_big = pygame.image.load('images/setmenu_back_big.png')
  35. setmenu_frame = pygame.image.load('images/setmenu_frame.png')
  36. setmenu_frame_big = pygame.image.load('images/setmenu_frame_big.png')
  37. setmenu_sound = pygame.image.load('images/setmenu_sound.png')
  38. setmenu_sound_big = pygame.image.load('images/setmenu_sound_big.png')

  39. soundmenu = pygame.image.load('images/soundmenu.png')
  40. soundmenu_0 = pygame.image.load('images/soundmenu_0.png')
  41. soundmenu_1 = pygame.image.load('images/soundmenu_1.png')
  42. soundmenu_2 = pygame.image.load('images/soundmenu_2.png')
  43. soundmenu_3 = pygame.image.load('images/soundmenu_3.png')
  44. soundmenu_4 = pygame.image.load('images/soundmenu_4.png')
  45. soundmenu_5 = pygame.image.load('images/soundmenu_5.png')
  46. soundmenu_back = pygame.image.load('images/soundmenu_back.png')
  47. soundmenu_back_big = pygame.image.load('images/soundmenu_back_big.png')
  48. soundmenu_minus = pygame.image.load('images/soundmenu_minus.png')
  49. soundmenu_minus_big = pygame.image.load('images/soundmenu_minus_big.png')
  50. soundmenu_plus = pygame.image.load('images/soundmenu_plus.png')
  51. soundmenu_plus_big = pygame.image.load('images/soundmenu_plus_big.png')

  52. startmenu = pygame.image.load('images/startmenu.png')
  53. startmenu_back = pygame.image.load('images/startmenu_back.png')
  54. startmenu_back_big = pygame.image.load('images/startmenu_back_big.png')
  55. startmenu_new = pygame.image.load('images/startmenu_new.png')
  56. startmenu_new_big = pygame.image.load('images/startmenu_new_big.png')
  57. startmenu_read = pygame.image.load('images/startmenu_read.png')
  58. startmenu_read_big = pygame.image.load('images/startmenu_read_big.png')

  59. writermenu = pygame.image.load('images/writermenu.png')
  60. writermenu_back = pygame.image.load('images/writermenu_back.png')
  61. writermenu_back_big = pygame.image.load('images/writermenu_back_big.png')

  62. image_none = pygame.image.load('images/image_none.png')

  63. def main_pagecheck(mouse_x = 0,mouse_y = 0,main_page = 0,volume = 3,frame = 60):

  64.     if main_page == 0:
  65.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 400 and mouse_y < 500:
  66.             temp = 0
  67.             for event in pygame.event.get():
  68.                 if event.type == MOUSEBUTTONDOWN:
  69.                     pressed_array = pygame.mouse.get_pressed()
  70.                     for index in range(len(pressed_array)):
  71.                         if pressed_array[index]:
  72.                             if index == 0:
  73.                                 temp = 1
  74.             if temp == 1:
  75.                 return [1,startmenu,startmenu_new,startmenu_read,startmenu_back,image_none,volume,frame,1]
  76.             else:
  77.                 return [0,mainmenu,mainmenu_start_big,mainmenu_help,mainmenu_set,image_none,volume,frame,0]
  78.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 580 and mouse_y < 680:
  79.             temp = 0
  80.             for event in pygame.event.get():
  81.                 if event.type == MOUSEBUTTONDOWN:
  82.                     pressed_array = pygame.mouse.get_pressed()
  83.                     for index in range(len(pressed_array)):
  84.                         if pressed_array[index]:
  85.                             if index == 0:
  86.                                 temp = 1
  87.             if temp == 1:
  88.                 return [2,helpmenu,helpmenu_raiders,helpmenu_writer,helpmenu_back,image_none,volume,frame,1]
  89.             else:
  90.                 return [0,mainmenu,mainmenu_start,mainmenu_help_big,mainmenu_set,image_none,volume,frame,0]
  91.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  92.             temp = 0
  93.             for event in pygame.event.get():
  94.                 if event.type == MOUSEBUTTONDOWN:
  95.                     pressed_array = pygame.mouse.get_pressed()
  96.                     for index in range(len(pressed_array)):
  97.                         if pressed_array[index]:
  98.                             if index == 0:
  99.                                 temp = 1
  100.             if temp == 1:
  101.                 return [3,setmenu,setmenu_sound,setmenu_frame,setmenu_back,image_none,volume,frame,1]
  102.             else:
  103.                 return [0,mainmenu,mainmenu_start,mainmenu_help,mainmenu_set_big,image_none,volume,frame,0]
  104.         else:
  105.             return [0,mainmenu,mainmenu_start,mainmenu_help,mainmenu_set,image_none,volume,frame,0]
  106.             
  107.     elif main_page == 1:
  108.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 400 and mouse_y < 500:
  109.             temp = 0
  110.             for event in pygame.event.get():
  111.                 if event.type == MOUSEBUTTONDOWN:
  112.                     pressed_array = pygame.mouse.get_pressed()
  113.                     for index in range(len(pressed_array)):
  114.                         if pressed_array[index]:
  115.                             if index == 0:
  116.                                 temp = 1
  117.             if temp == 1:
  118.                 return [9,image_none,image_none,image_none,image_none,image_none,volume,frame,1]
  119.             else:
  120.                 return [1,startmenu,startmenu_new_big,startmenu_read,startmenu_back,image_none,volume,frame,0]
  121.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 580 and mouse_y < 680:
  122.             temp = 0
  123.             for event in pygame.event.get():
  124.                 if event.type == MOUSEBUTTONDOWN:
  125.                     pressed_array = pygame.mouse.get_pressed()
  126.                     for index in range(len(pressed_array)):
  127.                         if pressed_array[index]:
  128.                             if index == 0:
  129.                                 temp = 1
  130.             if temp == 1:
  131.                 return [8,image_none,image_none,image_none,image_none,image_none,volume,frame,1]
  132.             else:
  133.                 return [1,startmenu,startmenu_new,startmenu_read_big,startmenu_back,image_none,volume,frame,0]
  134.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  135.             temp = 0
  136.             for event in pygame.event.get():
  137.                 if event.type == MOUSEBUTTONDOWN:
  138.                     pressed_array = pygame.mouse.get_pressed()
  139.                     for index in range(len(pressed_array)):
  140.                         if pressed_array[index]:
  141.                             if index == 0:
  142.                                 temp = 1
  143.             if temp == 1:
  144.                 return [0,mainmenu,mainmenu_start,mainmenu_help,mainmenu_set,image_none,volume,frame,1]
  145.             else:
  146.                 return [1,startmenu,startmenu_new,startmenu_read,startmenu_back_big,image_none,volume,frame,0]
  147.         else:
  148.             return [1,startmenu,startmenu_new,startmenu_read,startmenu_back,image_none,volume,frame,0]
  149.         
  150.     elif main_page == 2:
  151.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 400 and mouse_y < 500:
  152.             temp = 0
  153.             for event in pygame.event.get():
  154.                 if event.type == MOUSEBUTTONDOWN:
  155.                     pressed_array = pygame.mouse.get_pressed()
  156.                     for index in range(len(pressed_array)):
  157.                         if pressed_array[index]:
  158.                             if index == 0:
  159.                                 temp = 1
  160.             if temp == 1:
  161.                 return [4,raidersmenu,image_none,image_none,raidersmenu_back,image_none,volume,frame,1]
  162.             else:
  163.                 return [2,helpmenu,helpmenu_raiders_big,helpmenu_writer,helpmenu_back,image_none,volume,frame,0]
  164.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 580 and mouse_y < 680:
  165.             temp = 0
  166.             for event in pygame.event.get():
  167.                 if event.type == MOUSEBUTTONDOWN:
  168.                     pressed_array = pygame.mouse.get_pressed()
  169.                     for index in range(len(pressed_array)):
  170.                         if pressed_array[index]:
  171.                             if index == 0:
  172.                                 temp = 1
  173.             if temp == 1:
  174.                 return [5,writermenu,image_none,image_none,writermenu_back,image_none,volume,frame,1]
  175.             else:
  176.                 return [2,helpmenu,helpmenu_raiders,helpmenu_writer_big,helpmenu_back,image_none,volume,frame,0]
  177.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  178.             temp = 0
  179.             for event in pygame.event.get():
  180.                 if event.type == MOUSEBUTTONDOWN:
  181.                     pressed_array = pygame.mouse.get_pressed()
  182.                     for index in range(len(pressed_array)):
  183.                         if pressed_array[index]:
  184.                             if index == 0:
  185.                                 temp = 1
  186.             if temp == 1:
  187.                 return [0,mainmenu,mainmenu_start,mainmenu_help,mainmenu_set,image_none,volume,frame,1]
  188.             else:
  189.                 return [2,helpmenu,helpmenu_raiders,helpmenu_writer,helpmenu_back_big,image_none,volume,frame,0]
  190.         else:
  191.             return [2,helpmenu,helpmenu_raiders,helpmenu_writer,helpmenu_back,image_none,volume,frame,0]
  192.         
  193.     elif main_page == 3:
  194.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 400 and mouse_y < 500:
  195.             temp = 0
  196.             for event in pygame.event.get():
  197.                 if event.type == MOUSEBUTTONDOWN:
  198.                     pressed_array = pygame.mouse.get_pressed()
  199.                     for index in range(len(pressed_array)):
  200.                         if pressed_array[index]:
  201.                             if index == 0:
  202.                                 temp = 1
  203.             if temp == 1:
  204.                 if volume == 0:
  205.                     han_4 = soundmenu_0
  206.                 elif volume == 1:
  207.                     han_4 = soundmenu_1
  208.                 elif volume == 2:
  209.                     han_4 = soundmenu_2
  210.                 elif volume == 3:
  211.                     han_4 = soundmenu_3
  212.                 elif volume == 4:
  213.                     han_4 = soundmenu_4
  214.                 else:
  215.                     han_4 = soundmenu_5
  216.                 return [6,soundmenu,soundmenu_plus,soundmenu_minus,soundmenu_back,han_4,volume,frame,1]
  217.             else:
  218.                 return [3,setmenu,setmenu_sound_big,setmenu_frame,setmenu_back,image_none,volume,frame,0]
  219.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 580 and mouse_y < 680:
  220.             temp = 0
  221.             for event in pygame.event.get():
  222.                 if event.type == MOUSEBUTTONDOWN:
  223.                     pressed_array = pygame.mouse.get_pressed()
  224.                     for index in range(len(pressed_array)):
  225.                         if pressed_array[index]:
  226.                             if index == 0:
  227.                                 temp = 1
  228.             if temp == 1:
  229.                 if frame == 30:
  230.                     han_4 = framemenu_low_2
  231.                 else:
  232.                     han_4 = framemenu_high_2
  233.                 return [7,framemenu,image_none,image_none,framemenu_back,han_4,volume,frame,1]
  234.             else:
  235.                 return [3,setmenu,setmenu_sound,setmenu_frame_big,setmenu_back,image_none,volume,frame,0]
  236.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  237.             temp = 0
  238.             for event in pygame.event.get():
  239.                 if event.type == MOUSEBUTTONDOWN:
  240.                     pressed_array = pygame.mouse.get_pressed()
  241.                     for index in range(len(pressed_array)):
  242.                         if pressed_array[index]:
  243.                             if index == 0:
  244.                                 temp = 1
  245.             if temp == 1:
  246.                 return [0,mainmenu,mainmenu_start,mainmenu_help,mainmenu_set,image_none,volume,frame,1]
  247.             else:
  248.                 return [3,setmenu,setmenu_sound,setmenu_frame,setmenu_back_big,image_none,volume,frame,0]
  249.         else:
  250.             return [3,setmenu,setmenu_sound,setmenu_frame,setmenu_back,image_none,volume,frame,0]
  251.         
  252.     elif main_page == 4:
  253.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  254.             temp = 0
  255.             for event in pygame.event.get():
  256.                 if event.type == MOUSEBUTTONDOWN:
  257.                     pressed_array = pygame.mouse.get_pressed()
  258.                     for index in range(len(pressed_array)):
  259.                         if pressed_array[index]:
  260.                             if index == 0:
  261.                                 temp = 1
  262.             if temp == 1:
  263.                 return [2,helpmenu,helpmenu_raiders,helpmenu_writer,helpmenu_back,image_none,volume,frame,1]
  264.             else:
  265.                 return [4,raidersmenu,image_none,image_none,raidersmenu_back_big,image_none,volume,frame,0]
  266.         else:
  267.             return [4,raidersmenu,image_none,image_none,raidersmenu_back,image_none,volume,frame,0]
  268.             
  269.     elif main_page == 5:
  270.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  271.             temp = 0
  272.             for event in pygame.event.get():
  273.                 if event.type == MOUSEBUTTONDOWN:
  274.                     pressed_array = pygame.mouse.get_pressed()
  275.                     for index in range(len(pressed_array)):
  276.                         if pressed_array[index]:
  277.                             if index == 0:
  278.                                 temp = 1
  279.             if temp == 1:
  280.                 return [2,helpmenu,helpmenu_raiders,helpmenu_writer,helpmenu_back,image_none,volume,frame,1]
  281.             else:
  282.                 return [5,writermenu,image_none,image_none,raidersmenu_back_big,image_none,volume,frame,0]
  283.         else:
  284.             return [5,writermenu,image_none,image_none,writermenu_back,image_none,volume,frame,0]
  285.         
  286.     elif main_page == 6:
  287.         if volume == 0:
  288.             han_4 = soundmenu_0
  289.         elif volume == 1:
  290.             han_4 = soundmenu_1
  291.         elif volume == 2:
  292.             han_4 = soundmenu_2
  293.         elif volume == 3:
  294.             han_4 = soundmenu_3
  295.         elif volume == 4:
  296.             han_4 = soundmenu_4
  297.         else:
  298.             han_4 = soundmenu_5
  299.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 400 and mouse_y < 500:
  300.             temp = 0
  301.             for event in pygame.event.get():
  302.                 if event.type == MOUSEBUTTONDOWN:
  303.                     pressed_array = pygame.mouse.get_pressed()
  304.                     for index in range(len(pressed_array)):
  305.                         if pressed_array[index]:
  306.                             if index == 0:
  307.                                 temp = 1
  308.             if temp == 1 and volume < 5:
  309.                 volume += 1
  310.                 if volume == 0:
  311.                     han_4 = soundmenu_0
  312.                 elif volume == 1:
  313.                     han_4 = soundmenu_1
  314.                 elif volume == 2:
  315.                     han_4 = soundmenu_2
  316.                 elif volume == 3:
  317.                     han_4 = soundmenu_3
  318.                 elif volume == 4:
  319.                     han_4 = soundmenu_4
  320.                 else:
  321.                     han_4 = soundmenu_5
  322.                 return [6,soundmenu,soundmenu_plus_big,soundmenu_minus,soundmenu_back,han_4,volume,frame,0]
  323.             else:
  324.                 return [6,soundmenu,soundmenu_plus_big,soundmenu_minus,soundmenu_back,han_4,volume,frame,0]
  325.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 580 and mouse_y < 680:
  326.             temp = 0
  327.             for event in pygame.event.get():
  328.                 if event.type == MOUSEBUTTONDOWN:
  329.                     pressed_array = pygame.mouse.get_pressed()
  330.                     for index in range(len(pressed_array)):
  331.                         if pressed_array[index]:
  332.                             if index == 0:
  333.                                 temp = 1
  334.             if temp == 1 and volume > 0:
  335.                 volume -= 1
  336.                 if volume == 0:
  337.                     han_4 = soundmenu_0
  338.                 elif volume == 1:
  339.                     han_4 = soundmenu_1
  340.                 elif volume == 2:
  341.                     han_4 = soundmenu_2
  342.                 elif volume == 3:
  343.                     han_4 = soundmenu_3
  344.                 elif volume == 4:
  345.                     han_4 = soundmenu_4
  346.                 else:
  347.                     han_4 = soundmenu_5
  348.                 return [6,soundmenu,soundmenu_plus,soundmenu_minus_big,soundmenu_back,han_4,volume,frame,0]
  349.             else:
  350.                 return [6,soundmenu,soundmenu_plus,soundmenu_minus_big,soundmenu_back,han_4,volume,frame,0]
  351.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  352.             temp = 0
  353.             for event in pygame.event.get():
  354.                 if event.type == MOUSEBUTTONDOWN:
  355.                     pressed_array = pygame.mouse.get_pressed()
  356.                     for index in range(len(pressed_array)):
  357.                         if pressed_array[index]:
  358.                             if index == 0:
  359.                                 temp = 1
  360.             if temp == 1:
  361.                 return [3,setmenu,setmenu_sound,setmenu_frame,setmenu_back,image_none,volume,frame,1]
  362.             else:
  363.                 return [6,soundmenu,soundmenu_plus,soundmenu_minus,soundmenu_back_big,han_4,volume,frame,0]
  364.         else:
  365.             return [6,soundmenu,soundmenu_plus,soundmenu_minus,soundmenu_back,han_4,volume,frame,0]
  366.         
  367.     elif main_page == 7:
  368.         if frame == 60:
  369.             han_4 = framemenu_low_2
  370.         else:
  371.             han_4 = framemenu_high_2
  372.         if mouse_x > 30 and mouse_x < 200 and mouse_y > 400 and mouse_y < 500:
  373.             temp = 0
  374.             for event in pygame.event.get():
  375.                 if event.type == MOUSEBUTTONDOWN:
  376.                     pressed_array = pygame.mouse.get_pressed()
  377.                     for index in range(len(pressed_array)):
  378.                         if pressed_array[index]:
  379.                             if index == 0:
  380.                                 temp = 1
  381.             if temp == 1:
  382.                 frame = 144
  383.                 return [7,framemenu,framemenu_high_big,framemenu_low,framemenu_back,framemenu_high_2,volume,frame,0]
  384.             else:
  385.                 return [7,framemenu,framemenu_high_big,framemenu_low,framemenu_back,han_4,volume,frame,0]
  386.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 580 and mouse_y < 680:
  387.             temp = 0
  388.             for event in pygame.event.get():
  389.                 if event.type == MOUSEBUTTONDOWN:
  390.                     pressed_array = pygame.mouse.get_pressed()
  391.                     for index in range(len(pressed_array)):
  392.                         if pressed_array[index]:
  393.                             if index == 0:
  394.                                 temp = 1
  395.             if temp == 1:
  396.                 frame = 60
  397.                 return [7,framemenu,framemenu_high,framemenu_low_big,framemenu_back,framemenu_low_2,volume,frame,0]
  398.             else:
  399.                 return [7,framemenu,framemenu_high,framemenu_low_big,framemenu_back,han_4,volume,frame,0]
  400.         elif mouse_x > 30 and mouse_x < 200 and mouse_y > 760 and mouse_y < 860:
  401.             temp = 0
  402.             for event in pygame.event.get():
  403.                 if event.type == MOUSEBUTTONDOWN:
  404.                     pressed_array = pygame.mouse.get_pressed()
  405.                     for index in range(len(pressed_array)):
  406.                         if pressed_array[index]:
  407.                             if index == 0:
  408.                                 temp = 1
  409.             if temp == 1:
  410.                 return [3,setmenu,setmenu_sound,setmenu_frame,setmenu_back,image_none,volume,frame,1]
  411.             else:
  412.                 return [7,framemenu,framemenu_high,framemenu_low,framemenu_back_big,han_4,volume,frame,0]
  413.         else:
  414.             return [7,framemenu,framemenu_high,framemenu_low,framemenu_back,han_4,volume,frame,0]
  415.    
  416.     elif main_page == 9:
  417.         return [9,image_none,image_none,image_none,image_none,image_none,volume,frame,1]
  418.     elif main_page == 8:
  419.         return [8,image_none,image_none,image_none,image_none,image_none,volume,frame,1]
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-11-12 18:40:21 | 显示全部楼层
另附上调用这个函数的码

  1. import pygame
  2. import sys
  3. import traceback
  4. import time
  5. import main_pagecheck
  6. from pygame.locals import *
  7. import os, pygame
  8. from random import *

  9. pygame.init()
  10. background_size = width,height = 640,972
  11. screen = pygame.display.set_mode(background_size)
  12. pygame.display.set_caption('Eternal life  a0.1   --   by:柯南')

  13. loading = pygame.image.load('images/loading.png')
  14. screen.blit(loading,(0,0))
  15. pygame.display.flip()

  16. framemenu = pygame.image.load('images/framemenu.png')
  17. framemenu_back = pygame.image.load('images/framemenu_back.png')
  18. framemenu_back_big = pygame.image.load('images/framemenu_back_big.png')
  19. framemenu_high = pygame.image.load('images/framemenu_high.png')
  20. framemenu_high_2 = pygame.image.load('images/framemenu_high_2.png')
  21. framemenu_high_big = pygame.image.load('images/framemenu_high_big.png')
  22. framemenu_low = pygame.image.load('images/framemenu_low.png')
  23. framemenu_low_2 = pygame.image.load('images/framemenu_low_2.png')
  24. framemenu_low_big = pygame.image.load('images/framemenu_low_big.png')

  25. helpmenu = pygame.image.load('images/helpmenu.png')
  26. helpmenu_back = pygame.image.load('images/helpmenu_back.png')
  27. helpmenu_back_big = pygame.image.load('images/helpmenu_back_big.png')
  28. helpmenu_raiders = pygame.image.load('images/helpmenu_raiders.png')
  29. helpmenu_raiders_big = pygame.image.load('images/helpmenu_raiders_big.png')
  30. helpmenu_writer = pygame.image.load('images/helpmenu_writer.png')
  31. helpmenu_writer_big = pygame.image.load('images/helpmenu_writer_big.png')

  32. mainmenu = pygame.image.load('images/mainmenu.png')
  33. mainmenu_help = pygame.image.load('images/mainmenu_help.png')
  34. mainmenu_help_big = pygame.image.load('images/mainmenu_help_big.png')
  35. mainmenu_set = pygame.image.load('images/mainmenu_set.png')
  36. mainmenu_set_big = pygame.image.load('images/mainmenu_set_big.png')
  37. mainmenu_start = pygame.image.load('images/mainmenu_start.png')
  38. mainmenu_start_big = pygame.image.load('images/mainmenu_start_big.png')

  39. raidersmenu = pygame.image.load('images/raidersmenu.png')
  40. raidersmenu_back = pygame.image.load('images/raidersmenu_back.png')
  41. raidersmenu_back_big = pygame.image.load('images/raidersmenu_back_big.png')

  42. setmenu = pygame.image.load('images/setmenu.png')
  43. setmenu_back = pygame.image.load('images/setmenu_back.png')
  44. setmenu_back_big = pygame.image.load('images/setmenu_back_big.png')
  45. setmenu_frame = pygame.image.load('images/setmenu_frame.png')
  46. setmenu_frame_big = pygame.image.load('images/setmenu_frame_big.png')
  47. setmenu_sound = pygame.image.load('images/setmenu_sound.png')
  48. setmenu_sound_big = pygame.image.load('images/setmenu_sound_big.png')

  49. soundmenu = pygame.image.load('images/soundmenu.png')
  50. soundmenu_0 = pygame.image.load('images/soundmenu_0.png')
  51. soundmenu_1 = pygame.image.load('images/soundmenu_1.png')
  52. soundmenu_2 = pygame.image.load('images/soundmenu_2.png')
  53. soundmenu_3 = pygame.image.load('images/soundmenu_3.png')
  54. soundmenu_4 = pygame.image.load('images/soundmenu_4.png')
  55. soundmenu_5 = pygame.image.load('images/soundmenu_5.png')
  56. soundmenu_back = pygame.image.load('images/soundmenu_back.png')
  57. soundmenu_back_big = pygame.image.load('images/soundmenu_back_big.png')
  58. soundmenu_minus = pygame.image.load('images/soundmenu_minus.png')
  59. soundmenu_minus_big = pygame.image.load('images/soundmenu_minus_big.png')
  60. soundmenu_plus = pygame.image.load('images/soundmenu_plus.png')
  61. soundmenu_plus_big = pygame.image.load('images/soundmenu_plus_big.png')

  62. startmenu = pygame.image.load('images/startmenu.png')
  63. startmenu_back = pygame.image.load('images/startmenu_back.png')
  64. startmenu_back_big = pygame.image.load('images/startmenu_back_big.png')
  65. startmenu_new = pygame.image.load('images/startmenu_new.png')
  66. startmenu_new_big = pygame.image.load('images/startmenu_new_big.png')
  67. startmenu_read = pygame.image.load('images/startmenu_read.png')
  68. startmenu_read_big = pygame.image.load('images/startmenu_read_big.png')

  69. writermenu = pygame.image.load('images/writermenu.png')
  70. writermenu_back = pygame.image.load('images/writermenu_back.png')
  71. writermenu_back_big = pygame.image.load('images/writermenu_back_big.png')

  72. image_none = pygame.image.load('images/image_none.png')
  73. mouse = pygame.image.load('images/mouse_1.png')

  74. pygame.mixer.music.load('sound/mainmenu.mp3')
  75. changemenu_sound = pygame.mixer.Sound('sound/mainmenu_changemenu.wav')

  76. time.sleep(3)

  77. def main():

  78.     pygame.mixer.music.play(-1)
  79.    
  80.     clock = pygame.time.Clock()
  81.    
  82.     frame = 144
  83.     volume = 3
  84.     main_page = 0
  85.     running = True
  86.    
  87.     pygame.mouse.set_pos(width//2,height//2)
  88.     pygame.mouse.set_visible(False)
  89.    
  90.     changemenu_sound.play(0)
  91.    
  92.     while running:
  93.         for event in pygame.event.get():
  94.             if event.type == QUIT:
  95.                 pygame.quit()
  96.                 sys.exit()
  97.                     
  98.         pygame.mixer.music.set_volume(volume * 0.2)
  99.         changemenu_sound.set_volume(volume * 0.5)
  100.                     
  101.         mouse_x,mouse_y = pygame.mouse.get_pos()
  102.         screen.blit(mouse,(mouse_x,mouse_y))
  103.         pygame.display.flip()

  104.         clock.tick(frame)
  105.         
  106.         main_check = main_pagecheck.main_pagecheck(mouse_x,mouse_y,main_page,volume,frame)
  107.         
  108.         if main_check[8] == 1:
  109.             changemenu_sound.play(0)
  110.         
  111.         if main_check[0] == 9:
  112.             print('调用游戏主程序')
  113.         if main_check[0] == 8:
  114.             print('调用读档算法')
  115.             print('调用游戏主程序')

  116.         main_page = main_check[0]
  117.         background = main_check[1]
  118.         han_1 = main_check[2]
  119.         han_2 = main_check[3]
  120.         han_3 = main_check[4]
  121.         han_4 = main_check[5]
  122.         volume = main_check[6]
  123.         frame = main_check[7]

  124.         screen.blit(background,(0,0))
  125.         screen.blit(han_1,(0,0))
  126.         screen.blit(han_2,(0,0))
  127.         screen.blit(han_3,(0,0))
  128.         screen.blit(han_4,(0,0))

  129.         pygame.display.flip()
  130.         clock.tick(frame)

  131.         
  132. if __name__ == '__main__':
  133.     try:
  134.         main()
  135.     except SystemExit:
  136.         pass
  137.     except:
  138.         traceback.print_exc()
  139.         pygame.quit()
  140.         input()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-12 19:06:42 | 显示全部楼层
这么多代码都不封装一下的吗?阅读起来好费劲啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-12 19:09:16 | 显示全部楼层
heboy18 发表于 2019-11-12 19:06
这么多代码都不封装一下的吗?阅读起来好费劲啊

啥叫封装
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-12 19:47:54 | 显示全部楼层

你怕是个其他语言程序猿跑来学的吧,我的学2星期了才到21课
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-12 21:40:26 | 显示全部楼层
icewin 发表于 2019-11-12 19:47
你怕是个其他语言程序猿跑来学的吧,我的学2星期了才到21课

2.0倍速
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-13 11:59:55 | 显示全部楼层

方法,对象,都可以实现代码封装。
我的意思是你这个从上到下太长了,看起来很费劲。别人就不太向阅读你的代码。写代码优雅一点,重复的就用方法提出来,做成一个模块,逻辑上分1,2,3,4。。。这样的步骤来告诉阅读代码的人分别是做了什么事情。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-13 12:03:14 | 显示全部楼层
四百多行的代码还在用if...else这样来判断,你是要搞死阅读代码的。我们实际开发一般要求代码超过100行就要必须用方法包装了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-11-13 13:25:15 | 显示全部楼层
heboy18 发表于 2019-11-13 11:59
方法,对象,都可以实现代码封装。
我的意思是你这个从上到下太长了,看起来很费劲。别人就不太向阅读你 ...

嗯嗯好的谢谢
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-1-20 17:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表